2026年剑客精翻:Claude Code官方教程(07)-Jupyter Notebook重构与仪表板开发

剑客精翻:Claude Code官方教程(07)-Jupyter Notebook重构与仪表板开发p span span 本课概览 span span p p span span 本节课将带领大家从 Web 应用开发领域转向数据科学实践 深入探索 Claude Code 在处理 Jupyter Notebook 方面的强大能力 我们将通过一个完整的实战案例 span span p

大家好,我是讯享网,很高兴认识大家。这里提供最前沿的Ai技术和互联网信息。



 

本课概览

本节课将带领大家从Web应用开发领域转向数据科学实践,深入探索Claude Code在处理Jupyter Notebook方面的强大能力。我们将通过一个完整的实战案例,学习如何将组织混乱、难以维护的原始Notebook重构为结构清晰、功能完善的数据分析系统,并最终转换为可部署的专业Web仪表板。

在这个过程中,你将掌握模块化代码设计的核心思想,学会运用关注点分离原则来提升代码的可测试性和可维护性。课程还会深入介绍Streamlit这一专业数据可视化框架的使用方法,让你能够快速创建交互式的数据仪表板。更重要的是,你将学会如何与Claude进行高效协作,通过精心设计的提示来实现复杂的代码重构需求。

本课内容为后续的Next.js应用开发和Figma集成奠定了坚实基础,展现了Claude Code在不同技术栈间的强大适应能力。学完本课后,你将具备独立完成数据科学项目重构和Web化部署的完整技能体系。

大家可以关注我的公众号🌟(或联系:lanyijianke1992),后台私信"cc资源包",领取我为大家整理的课外资源💼,持续更新中✅

从Web应用到数据科学

Claude Code具有读取和编辑Jupyter Notebook的强大功能。本节课程通过实际案例演示,展示如何使用Claude Code重构现有的Jupyter Notebook并将其转换为专业的数据仪表板。

前面的课程中,我们深入探索了Claude Code在前端和后端Web应用程序开发中的应用。现在将重点转向数据科学领域,展示Claude Code在处理Jupyter Notebook方面的卓越能力。

当前有一个包含虚构电商数据的Jupyter Notebook需要处理。这个Notebook通过pandas从ecommerce_data文件夹中的多个CSV文件读取数据,并进行基础的数据展示和分析。虽然能够获得所需的分析结果,但整体的数据组织和展示效果还有很大的改进空间。

深入分析数据处理流程后,发现当前的Notebook涉及了相当复杂的数据操作过程。其中一个关键的业务洞察需求是分析年度收入增长情况,特别是2023年相对于2022年的增长表现。

虽然现有的代码包含了实现这一目标所需的基本操作,包括多个CSV文件和数据框之间的合并处理,但在实际执行过程中出现了一些警告信息。同时,从视觉展示的角度来看,当前的实现方式在数据呈现的效率和美观性方面都有明显的提升空间。

尽管最终能够获得所需的数据结果,但整个过程显得较为繁琐且缺乏清晰的组织结构。这种情况促使我们考虑对整个Jupyter Notebook进行系统性的重构。

在其他几个数据分析部分中,需要计算诸如平均订单值等关键业务指标。当前的实现仅针对2023年的数据进行处理,但随着业务发展,必然需要扩展到2024年及后续年份的数据分析需求。

虽然现有的可视化结果在一定程度上满足了基本需求,但在专业性和交互性方面仍有很大的优化潜力。特别是在计算各州销售情况等地理维度分析时,现有的可视化方案远未达到**效果。通过引入Claude Code等先进工具,完全可以实现更加优雅和高效的解决方案。

制定重构计划

基于对现有问题的分析,接下来将展示如何运用Claude Code对Notebook进行系统性重构,从而更好地整合业务逻辑和数据展示层。

重构过程将通过向Claude提供精心设计的提示来启动,这个提示会引用目标Notebook以及相关的数据文件。为了更好地说明整个流程,需要先创建一个markdown文件来详细展示提示的结构和设计思路。

在提示设计中,需要特别注意文件引用的语法规范。通过特定的符号来引用文件名和文件夹名,确保Claude能够准确理解上下文。对于初学者而言,如果对提示工程的**实践不够确定,完全可以先向Claude请教:"针对这个具体任务,请提供最优的提示设计方案。"这种元提示的方法在实际应用中往往能获得意想不到的效果。

详细的重构要求

针对当前项目的具体情况,需要制定一套完整的重构规范,涵盖代码结构调整、质量改进以及特定Python模块的创建要求。

重构的核心目标是实现关注点分离:创建一个专门负责数据加载和预处理的Python文件,以及另一个专门用于业务指标计算的独立模块。这种模块化的设计架构将显著提升代码的可测试性和可维护性,同时让支撑可视化功能的底层逻辑更加清晰易懂。

除了代码结构的重组,还需要对可视化部分进行全面升级,采用更加专业和美观的展示方案。同时,为了提高系统的灵活性,需要增加针对数据源的配置化管理功能。

在与Claude交互时,明确具体的期望结果是至关重要的**实践。相比简单地要求"重构这个Notebook",更有效的方式是提供详细的需求描述:"请为这个Notebook创建完整的重构方案,包括底层数据处理模块、业务指标计算函数的文档化实现、依赖项管理文件,以及详细的使用说明文档。"

👍

以下为完整重构提示:

The @EDA.ipynb contains exploratory data analysis on e-commerce data in @ecommerce_data, focusing on sales metrics for 2023. Keep the same analysis and graphs, and improve the structure and documentation of the Notebook.

Review the existing Notebook and identify:

- What business metrics are currently calculated

- What visualizations are created

- What data transformations are performed

- Any code quality issues or inefficiencies

Refactoring Requirements

1. Notebook Structure & Documentation

- Add proper documentation and markdown cells with clear header and a brief explanation for the section

- Organize into logical sections:

- Introduction & Business Objectives

- Data Loading & Configuration

- Data Preparation & Transformation

- Business Metrics Calculation (revenue, product, geographic, customer experience analysis)

- Summary of observations

- Add table of contents at the beginning

- Include data dictionary explaining key columns and business terms

2. Code Quality Improvements

- Create reusable functions with docstrings

- Implement consistent naming and formatting

- Create separate Python files:

- business_metrics.py containing business metric calculations only

- data_loader.py loading, processing and cleaning the data

3. Enhanced Visualizations

- Improve all plots with:

- Clear and deive titles

- Proper axis labels with units

- Legends where needed

- Appropriate chart types for the data

- Include date range in plot titles or captions

- use consistent color business-oriented color schemes

4. Configurable Analysis Framework

The Notebook shows the computation of metrics for a specific date range (entire year of 2023 compared to 2022). Refactor the code so that the data is first filtered according to configurable month and year & implement general-purpose metric calculations.

Deliverables Expected

- Refactored Jupyter Notebook (EDA_Refactored.ipynb) with all improvements

- Business metrics module (business_metrics.py) with documented functions

- Requirements file (requirements.txt) listing all dependencies

- README section explaining how to use the refactored analysis

Success Criteria

- Easy-to read code & Notebook (do not use icons in the printing statements or markdown cells)

- Configurable analysis that works for any date range

- Reusable code that can be applied to future datasets

- Maintainable structure that other analysts can easily understand and extend

- Maintain all existing analyses while improving the quality, structure, and usability of the Notebook.

- Do not assume any business thresholds.

执行重构过程

将准备好的提示内容复制并提交给Claude Code。需要注意的是,当粘贴大量内容时,Claude Code会自动优化显示方式,只展示关键信息以保持界面的简洁性。

提交提示后,Claude Code将启动重构流程。重构过程包括Notebook单元格的深度分析、结构优化以及全新Notebook的创建。完成后,不仅能获得视觉效果显著提升的数据可视化,还将得到一系列支撑文件,包括专门的数据加载处理模块和业务指标计算的辅助函数。

与之前使用的其他工具相比,这次将采用专门针对Notebook的工具集。虽然具体工具有所不同(使用Notebook读取功能而非常规文件读取),但整体的执行模式保持一致,仍然会生成熟悉的待办事项列表来跟踪处理进度。

检查生成的代码

确认接受生成的Python文件后,可以观察到Claude Code正在使用适当的工具和**实践来创建代码结构。紧接着将生成另一个专门用于业务指标计算的Python文件,用于支撑最终的数据分析和可视化展示。

在Claude Code处理各个独立任务的过程中,可以随时检查已经创建的文件内容。通过代码审查能够发现,生成的面向对象实现方案在代码组织和可读性方面远远优于将所有功能都直接嵌入Notebook的传统做法。

同样,业务指标计算模块也展现出了优秀的设计质量。该模块具备接收数据框参数并返回相应可视化结果和数据验证信息的完整功能,充分体现了模块化设计的优势。

至此,已经成功创建了完整的业务指标计算模块,同时生成了重构后的Notebook、依赖项配置文件requirements.txt以及即将完成的项目说明文档。

测试重构结果

随着重构工作的推进,可以开始检验重构后Notebook的实际效果。通过逐个运行各个单元格来验证所有功能是否按照预期正常工作。从视觉效果来看,重构后的版本已经有了显著的改善。

在执行过程中,发现Claude试图读取之前的提示内容,此时可以明确指示Claude跳过提示读取步骤,专注于完成readme文档的生成工作。

通过对重构后Notebook的深入检查,能够明显感受到整体质量的提升。新版本不仅提供了更加清晰的数据分析展示,还增加了灵活的配置选项。用户可以便捷地指定分析年份进行数据对比,甚至可以细化到特定月份的数据分析。这些配置参数将在整个Notebook中保持一致性使用。

重构后的数据加载部分展现出良好的组织结构,自定义模块的引入使得代码逻辑更加清晰。当所有单元格顺利执行时,可以确认重构工作取得了预期的成效。

处理错误和调试

然而,在继续验证过程中,发现了一个需要解决的错误。通过错误信息的分析,可以判断这是一个键错误(KeyError)问题。面对这种情况,可以利用Claude Code的调试能力来快速解决问题。

在请求Claude协助修复错误时,除了描述遇到的具体问题(在运行特定单元格时出现键错误),还需要提供相关的代码上下文。通过向Claude Code提供完整的代码片段,能够让AI更准确地理解问题的根源并提供针对性的解决方案。

改进的可视化效果

经过修复后,可以观察到之前出现的错误信息已经消失,整个Notebook能够正常运行。此时可以开始检查重构后生成的业务指标结果。

在收入分析模块中,能够观察到数值显示更加清晰,信息展示更加丰富,同时数据的可读性也得到了大幅提升。

整体的可视化设计更加美观和专业。在类别性能分析部分,新的分析工具能够更好地展示各个类别及其对应的收入情况,提供了更深入的业务洞察。

地理性能分析部分同样表现出色,各州的可视化效果非常直观。通过交互式的悬停功能,用户可以轻松获取各州的详细信息。整个分析流程从上到下都保持了良好的一致性,特别是在初始交付分析部分,各项功能都运行良好。

设计仪表板布局

接下来将进一步提升用户体验,将Notebook转换为基于Web的交互式界面,通过Streamlit创建专业的数据仪表板。

👍

Streamlit是一个专门针对数据科学应用的Python库,在创建交互式界面方面表现出色,特别适合构建数据仪表板。从已经重构的Notebook过渡到基于Streamlit的Web应用程序,整个流程相当顺畅且高效。

为了明确仪表板的转换需求,需要创建一个专门的markdown文件(命名为convert to Dashboard.md)来详细说明转换规格和设计要求。

将要求Claude将重构后的Notebook转换为具有特定布局规范的专业Streamlit仪表板。为了确保转换过程的高效性并减少反复修改,需要在开始前明确所有的设计需求。

仪表板的整体布局应该包含以下核心组件:

  • 顶部区域设置带有标题和数据过滤器的头部区域;
  • 中间部分展示关键业务指标(KPI),包括收入增长、平均订单价值和总订单数量等关键卡片;
  • 主要图表区域包含收入分类分析、按州收入分布和客户满意度条形图等可视化元素;
  • 底部区域放置两个补充信息卡片,用于展示具体的数据说明和信息渲染方式。

基于这些明确的布局要求,接下来将使用Streamlit技术栈来实现从Notebook到Web可视化界面的完整迁移。

👍

以下为完整提示词

The @EDA.ipynb contains exploratory data analysis on e-commerce data in @ecommerce_data, focusing on sales metrics for 2023. Keep the same analysis and graphs, and improve the structure and documentation of the Notebook.

Review the existing Notebook and identify:

- What business metrics are currently calculated

- What visualizations are created

- What data transformations are performed

- Any code quality issues or inefficiencies

Refactoring Requirements

1. Notebook Structure & Documentation

- Add proper documentation and markdown cells with clear header and a brief explanation for the section

- Organize into logical sections:

- Introduction & Business Objectives

- Data Loading & Configuration

- Data Preparation & Transformation

- Business Metrics Calculation (revenue, product, geographic, customer experience analysis)

- Summary of observations

- Add table of contents at the beginning

- Include data dictionary explaining key columns and business terms

2. Code Quality Improvements

- Create reusable functions with docstrings

- Implement consistent naming and formatting

- Create separate Python files:

- business_metrics.py containing business metric calculations only

- data_loader.py loading, processing and cleaning the data

3. Enhanced Visualizations

- Improve all plots with:

- Clear and deive titles

- Proper axis labels with units

- Legends where needed

- Appropriate chart types for the data

- Include date range in plot titles or captions

- use consistent color business-oriented color schemes

4. Configurable Analysis Framework

The Notebook shows the computation of metrics for a specific date range (entire year of 2023 compared to 2022). Refactor the code so that the data is first filtered according to configurable month and year & implement general-purpose metric calculations.

Deliverables Expected

- Refactored Jupyter Notebook (EDA_Refactored.ipynb) with all improvements

- Business metrics module (business_metrics.py) with documented functions

- Requirements file (requirements.txt) listing all dependencies

- README section explaining how to use the refactored analysis

Success Criteria

- Easy-to read code & Notebook (do not use icons in the printing statements or markdown cells)

- Configurable analysis that works for any date range

- Reusable code that can be applied to future datasets

- Maintainable structure that other analysts can easily understand and extend

- Maintain all existing analyses while improving the quality, structure, and usability of the Notebook.

- Do not assume any business thresholds.

实现Streamlit仪表板

Claude Code成功生成了完整的仪表板代码结构。通过代码分析可以看到,实现过程包含了所有必要的技术组件:首先导入Streamlit核心库,然后引入pandas进行数据处理,同时集成包括plotly在内的专业可视化库。在样式设置方面,代码中包含了自定义CSS用于界面美化,并进行了合适的页面配置。

代码的核心部分主要围绕Streamlit的st对象进行构建,这正是Streamlit框架的标准开发模式。同时,系统自动更新了requirements.txt文件以确保依赖项的完整性,并准备生成项目的说明文档。在这个阶段,可以选择让Claude专注于修改现有的readme文件而不是创建新的文档(直接给它发指令就好了)。

在复杂的项目开发过程中,适时地调整Claude的执行方向是很重要的项目管理技能,既要保持开发流程的连续性,又要确保最终结果符合具体需求。

启动和测试仪表板

完成仪表板代码的创建后,需要通过启动本地服务器来测试实际效果。打开新的终端窗口,使用streamlit run命令配合Dashboard.py文件来启动Web服务器。

在初次运行时,可能会遇到streamlit命令不可用的情况,这表明需要先安装相关的依赖包。通过运行pip install命令来安装requirements.txt中列出的所有必要依赖项,确保在服务器启动时不会出现任何依赖项缺失的问题。

依赖项安装完成后,就可以正式启动服务器了。使用标准的streamlit run命令配合Python文件名即可启动Web应用程序。

优化仪表板显示

通过浏览器访问仪表板后,可以看到基本的功能已经实现,包括收入数据和增长指标的展示。虽然整体效果已经相当不错,但还存在一些明显的改进空间。部分卡片显示为空白状态,这些冗余元素实际上并没有提供有用的信息,应该被清理掉。

另外一个问题是默认设置为2024年会导致一些困扰,因为当前的数据集中2024年的月度数据并不完整。这种情况下查看月度增长趋势会产生误导性的结果。

比较合理的做法是将默认年份调整为2023年,这样既能获得更完整的可视化效果,又能确保月份过滤功能的有效性,且不会因为数据不足而产生令人困惑的结果。

最终优化和改进

基于发现的问题,需要向Claude提交进一步的优化需求。虽然当前的仪表板已经有了良好的基础,但还需要实施以下关键改进:

首先是将默认年份调整为2023年,以确保数据的完整性;

其次是增加月份过滤功能,提供更细粒度的数据分析能力;

最后是清理所有的空白卡片,优化界面的整洁性。

按照这些要求更新仪表板代码后,可以观察到各项改进正在逐步实现。默认年份成功设置为2023年,同时新增的月份过滤器为用户提供了更灵活的数据查看选项。

在收入图表的处理方面,新的实现能够很好地支持按月份进行数据过滤。同时可以注意到CSS样式也得到了相应的调整,使得图表容器的显示效果更加清爽整洁。

虽然本节课的演示暂时告一段落,但通过持续的优化提示,完全可以创建出更加强大和精美的数据可视化效果。在相对较短的时间内,我们成功地将一个组织混乱、难以阅读和理解的原始Notebook,转变为一个可以部署到生产环境、便于团队协作分享且支持快速迭代的专业数据仪表板。

下一课将探索更广阔的应用场景,通过构建Next.js应用程序,展示如何使用Claude Code连接Figma和Playwright的MCP服务器,实现从设计模拟图到功能完整的Web应用程序的快速转换。

课代表学习笔记

📖 本节课核心内容

🎯 重点掌握

精心设计重构提示:学会通过详细的需求描述和明确的期望结果来引导Claude进行代码重构,包括文件引用语法、模块化设计要求和具体的功能规范,这是确保重构质量的关键技能。

模块化代码架构:掌握关注点分离的核心原则,学会将数据加载、预处理、业务指标计算等功能拆分为独立模块,提升代码的组织性和可重用性,这是专业开发的必备技能。

Streamlit仪表板开发:深入了解Streamlit框架的核心组件和开发模式,包括布局设计、交互组件使用、可视化图表集成和样式优化,能够独立创建专业级的数据可视化界面。

⚠️ 难点解析

复杂项目的提示工程设计:当面对复杂的重构需求时,如何设计既具体又全面的提示是一个重要难点。许多初学者容易过于简化提示内容,导致重构结果不符合预期。

解决思路:建议采用分层次的提示设计方法,先明确总体目标,然后逐步细化到具体的技术要求、文件结构和功能规范。可以通过元提示的方式先向Claude询问**的提示设计方案,然后基于建议进行优化调整。

💡 实践要点

  • 使用Notebook专用工具进行读取和编辑操作,注意与常规文件操作工具的区别
  • 重构前要充分分析现有代码的问题和改进空间,制定清晰的重构目标
  • 创建独立的Python模块时要注意面向对象的设计原则和代码组织结构
  • 在Streamlit开发中合理使用st对象的各种组件,注意布局和样式的统一性
  • 通过requirements.txt管理项目依赖,确保部署环境的一致性
  • 遇到错误时要及时提供完整的错误信息和相关代码上下文给Claude
  • 测试仪表板时要注意数据的完整性,选择合适的默认参数避免误导性结果

大家可以关注我的公众号🌟(或联系:lanyijianke1992),后台私信"cc资源包",领取我为大家整理的课外资源💼,持续更新中✅

我是蓝衣剑客,谢谢你看我的文章。

小讯
上一篇 2026-04-03 19:47
下一篇 2026-04-03 19:45

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/224409.html