ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Jupyter Notebook安装与使用指南:从零上手数据分析

Jupyter Notebook安装与使用指南:从零上手数据分析 最近有不少读者私信问我Jupyter Notebook 到底怎么安装装完之后又该怎么用。确实很多 Python 数据分析新手第一次接触 Jupyter Notebook 时会被“环境变量”“内核”“浏览器打开”这些词绕晕。这篇文章就把 Jupyter Notebook 的安装、启动、日常使用、常见报错一次讲透顺便用一个小案例带你体验它的完整分析流程。无论你是刚学 Python 的学生还是需要用 Python 做数据处理、可视化分析的职场新人又或是已经装了 PyCharm 但想补充一个交互式分析工具的开发者这篇文章都适用。1. Jupyter Notebook 是什么为什么数据分析师都在用先从最直白的话说起。Jupyter Notebook 是一个基于浏览器的交互式 Python 编程工具。你可以把它理解成一个“可以运行代码的文档编辑器”。它把代码、代码运行结果、图表、文字说明全部整合在一个.ipynb文件里。你写一段代码立刻运行立刻看到结果并且还能在代码块之间写上分析结论。这种方式对数据分析场景特别友好。传统写 Python 脚本的方式是写一整个.py文件然后一次性运行中间某一个环节报错就得从头排查。而在 Jupyter Notebook 中你可以把分析过程拆成很多个小格子每个格子里放一段独立的代码运行完这个格子、看过结果、再做下一步。这种“边写边运行边看结果”的工作流让数据分析过程变得非常顺畅。从专业定义上看Jupyter Notebook 是一个开源的 Web 应用程序支持 40 多种编程语言的内核Kernel其中最常用的是 Python 内核。它起源于 IPython Notebook后来演化成独立的 Jupyter 项目。那么它和 PyCharm 这类 IDE 有什么区别PyCharm 是完整的集成开发环境适合写大型项目、做工程化开发强调代码组织、调试和部署。而 Jupyter Notebook 更专注于探索式分析核心价值在于“交互”和“可视化反馈”。前者适合开发软件后者适合分析数据。两者并不冲突很多开发者会在 PyCharm 里写正式模块在 Jupyter Notebook 里做数据探索和模型验证。另外一个容易混淆的概念是 Jupyter Notebook 和 JupyterLab。JupyterLab 是 Jupyter 项目的下一代界面功能更丰富可以同时打开多个 Notebook、终端、文本编辑器。但它们的内核和文件格式是共通的。对于新手从经典 Jupyter Notebook 入手完全没问题学完后切到 JupyterLab 几乎零成本。2. 环境准备先理清 Python、Anaconda 与 Jupyter 的关系安装 Jupyter Notebook 之前需要先搞清楚它的运行环境。Jupyter Notebook 本身并不包含 Python 解释器。它要运行 Python 代码必须有 Python 环境作为底层支撑。所以安装 Jupyter Notebook 之前电脑上要有一个能正常使用的 Python。这里就引出了两个常见的安装路径第一种先装 Python然后通过 pip 包管理器安装 Jupyter Notebook。第二种直接安装 Anaconda它是 Python 的一个发行版自带 Python 解释器、pip、conda 包管理器、Jupyter Notebook 以及常用的数据分析库例如 NumPy、pandas、Matplotlib。对于做数据分析的初学者来说我更推荐第二种方式。因为 Anaconda 不仅仅帮你解决 Jupyter Notebook 的安装问题还帮你把数据分析需要用到的库一次性装齐省去后续逐个安装第三方库的麻烦。如果选择第一种方式有一个容易踩坑的点系统里可能已经存在多个 Python 版本或者 PyCharm 自带了虚拟环境直接执行pip install jupyter时可能装到了非预期的环境中。因此使用 pip 安装之前最好先确认当前的 Python 环境和 pip 路径。还有一点需要了解Jupyter Notebook 支持通过内核机制使用不同的 Python 解释器。比如你系统里装了 Python 3.9 和 Python 3.11可以分别为它们注册不同的 Jupyter 内核在新建 Notebook 时选择对应内核。初学者刚开始不需要深入这个机制但理解“内核”这个概念对后面排查连接失败问题会很有帮助。3. 安装 Jupyter NotebookAnaconda 与 pip 两条路线下面进入正题分别介绍 Anaconda 安装和 pip 安装的完整步骤。3.1 通过 Anaconda 安装新手推荐Anaconda 官网的下载页面会提供 Windows、macOS、Linux 三平台的安装包选择一个和操作系统匹配的 Python 3 版本即可。版本建议选择最新的稳定发行版。下载完成后双击安装包开始安装。这里有一个很多新手都会遇到的问题安装过程中有一个步骤询问是否把 Anaconda 加入系统环境变量 PATH。如果你是 Windows 用户安装向导默认不勾选“Add Anaconda to my PATH environment variable”并会提示“不推荐”这样设置。原因是 Anaconda 自带的 Python 如果被加入系统 PATH可能会和系统里已有的 Python 产生冲突。但如果你不熟悉命令行后续想直接在 cmd 或 PowerShell 中输入jupyter notebook启动就会发现提示“不是内部或外部命令”。针对这个情况我更推荐的做法是安装时保持默认不勾选 PATH平时通过 Anaconda Prompt 来启动 Jupyter Notebook。Anaconda Prompt 是一个经过配置的命令行工具安装 Anaconda 时会自动装好打开后就直接处于 Anaconda 的环境中不需要手动配置 PATH。安装完成后验证是否成功。打开 Anaconda Prompt输入以下命令conda --version如果能看到 conda 版本号说明 Anaconda 安装成功。接着输入jupyter notebook系统会启动 Jupyter Notebook 服务并自动打开浏览器进入 Notebook Dashboard 页面地址通常是http://localhost:8888。3.2 通过 pip 安装适合已有 Python 环境如果你已经有了 Python 环境不希望再装一个 Anaconda那么用 pip 安装是更轻量的选择。先确认 Python 版本。打开命令行工具Windows 用户可以使用 cmd 或 PowerShell输入python --version如果提示找不到 python先检查 Python 是否安装成功、是否加入了环境变量 PATH。确认 Python 没问题后执行安装命令pip install jupyter notebook注意这里安装的是 jupyter 主包和 notebook 包。有些教程写的是pip install notebook这也是可以的notebook包本身就能提供经典 Notebook 界面。为了保险起见我建议执行完整命令pip install jupyter安装过程中 pip 会自动处理依赖关系比如 ipykernel、nbformat、jupyter-core 等。安装完毕后在命令行输入jupyter notebook如果浏览器成功打开 Jupyter Notebook 页面说明安装成功。这里需要提醒一句pip 安装时如果命令行提示“WARNING: pip is being run by an old version of Python”说明系统当前使用的 Python 版本比较旧。建议升级 Python 或者创建虚拟环境后重新安装。3.3 验证安装快速判断是否成功不管用哪种方式安装启动 Jupyter Notebook 后重点确认以下三件事命令行窗口是否显示类似http://localhost:8888的地址。浏览器是否成功打开 Jupyter Dashboard。点击右上角“New”能否创建 Python 3 的 Notebook。如果以上三件事都成立说明 Jupyter Notebook 已经能正常使用。此时可以新建一个 Notebook输入以下代码验证 Python 环境print(Hello Jupyter)按Shift Enter运行单元格下方如果输出Hello Jupyter整个安装流程就完整跑通了。4. 启动与基本操作从 Dashboard 到第一个 Notebook安装完成只是第一步真正上手还要熟悉 Jupyter Notebook 的界面和操作方式。4.1 启动服务与 Dashboard 界面在命令行执行jupyter notebook后浏览器会打开 Dashboard也就是文件管理页面。这个页面上展示的是启动命令所在目录下的文件列表你可以在这里打开已有的.ipynb文件也可以创建新的 Notebook。建议在开始使用前建立一个专门的工作目录例如D:\jupyter_workspace用来存放所有 Notebook 项目。这样启动命令就变成cd D:\jupyter_workspace jupyter notebook不建议直接在系统盘根目录或者 C 盘用户目录下启动容易造成文件混乱后面找项目也不方便。4.2 新建 Notebook 文件在 Dashboard 页面右上角点击“New”下拉菜单中会出现“Python 3”等内核选项。点击“Python 3”即可创建一个新的 Notebook 文件默认文件名是Untitled.ipynb。建议马上重命名养成好习惯。新建的 Notebook 页面主要由三部分组成顶部是菜单栏和工具栏提供文件保存、单元格操作、内核控制等功能。中间是单元格区域默认有一个空白的代码单元格。右侧显示内核状态如果显示圆形灰色图标表示内核空闲正在等待代码输入。4.3 单元格类型与两种模式Notebook 中的每个单元格有两种核心类型Code 单元格用于编写 Python 代码。Markdown 单元格用于编写文字说明支持 Markdown 语法。工具栏中可以切换单元格类型。快捷键M可以把当前单元格切换为 Markdown按下Y切换回 Code。Notebook 还有两种输入模式编辑模式单元格内部处于可编辑状态此时输入的内容会进入单元格。命令模式焦点在单元格外部此时键盘快捷键对应的是操作命令比如新建单元格、删除单元格、切换类型。按Esc退出编辑模式进入命令模式按Enter点击单元格进入编辑模式。理解这两种模式是流畅使用快捷键的基础。4.4 常用快捷键与单元格操作下面整理了一份 Jupyter Notebook 的常用快捷键表新手可以先记住前几个再逐步扩展快捷键功能说明Shift Enter运行当前单元格并选中下一个单元格Ctrl Enter运行当前单元格但不移动焦点Alt Enter运行当前单元格并在下方插入新单元格Esc退出编辑模式进入命令模式A在当前单元格上方插入新单元格B在当前单元格下方插入新单元格D D连续按两次 D删除当前单元格M将当前单元格切换为 MarkdownY将当前单元格切换为 CodeCtrl S保存 Notebook 文件运行代码时有一个细节需要注意单元格代码中的变量会在内核中保留下一个单元格可以直接使用。例如在第一个单元格执行a 10第二个单元格执行print(a)会输出 10。这就是 Notebook 和普通脚本最大的区别之一——代码执行是有状态的。4.5 保存与导出Notebook 文件是.ipynb格式本质上是 JSON 结构。保存时直接按Ctrl S即可文件会保存到启动服务时的工作目录下。如果需要把分析结果分享给同事或提交作业可以通过菜单栏“File - Download as”导出为.py脚本或.html文件。导出 HTML 后代码运行结果会以静态文件形式呈现对方不需要安装 Python 也能查看。5. 数据分析实战用 Jupyter Notebook 完成一个小项目为了让大家直观感受 Jupyter Notebook 在数据分析中的用法这里用一个销售数据实例串联整个流程。示例数据为虚构的订单数据包含日期、产品类别、销售额、利润等字段。5.1 构造数据首先在第一个单元格中导入 pandas 库并构造一个 DataFrame。import pandas as pd data { 日期: [2024-01-01, 2024-01-02, 2024-01-03, 2024-01-04, 2024-01-05], 产品类别: [手机, 电脑, 手机, 平板, 电脑], 销售额: [12000, 23500, 9800, 5600, 18800], 利润: [1800, 4200, 950, 800, 3100] } df pd.DataFrame(data) df运行后单元格下方会直接显示一个整洁的表格。这是 Jupyter Notebook 数据分析体验的重要一环不需要调用 print单元格最后一行表达式的值会自动以富文本形式展示。5.2 数据清洗与查看下一步查看数据类型和缺失值。df.info()df.info()会输出每列的数据类型、非空值数量等信息。如果显示RangeIndex: 5 entries, 0 to 4 Data columns (total 4 columns):说明数据格式正确。如果某些列出现缺失值可以加上 dropna、fillna 操作来清洗数据。例如df_clean df.dropna()这一步虽然是示例但实际项目中从不同数据源导入的数据通常都会有缺失值、重复值等问题建议拿到数据后先做一次健壮的检查。5.3 数据统计分析用 pandas 做分组统计非常简单。例如按产品类别计算销售额总和group_result df.groupby(产品类别)[销售额].sum() group_result输出产品类别 平板 5600 手机 21800 电脑 42300 Name: 销售额, dtype: int64如果想看整体统计信息可以执行df.describe()describe()会输出销售额、利润的均值、标准差、最小值、最大值等统计参数这是数据分析初期了解数据分布最常用的函数之一。5.4 数据可视化Jupyter Notebook 中做数据可视化也很方便。先导入 Matplotlib并执行魔术命令让图表直接显示在单元格下方。import matplotlib.pyplot as plt plt.rcParams[font.sans-serif] [SimHei] plt.rcParams[axes.unicode_minus] False group_result.plot(kindbar) plt.title(各类别销售额对比) plt.show()需要说明的是SimHei是 Windows 系统自带的中文字体设置它主要是为了避免图表中文乱码。如果是在 macOS 上运行可以改为Arial Unicode MS或去掉中文字体设置。运行后可以看到一张柱状图直观展示不同产品类别的销售额差异。这就是 Jupyter Notebook 适合做数据分析的原因代码、图表、结论可以放在同一个文档里。5.5 在 Notebook 中撰写分析结论在数据统计和图表下方新建一个 Markdown 单元格写入分析结论从统计结果来看电脑类产品销售额最高占比接近 60%手机类产品销量虽多但利润较低后续可以考虑调整促销策略。这样一份带代码、带图表、带结论的数据分析报告就完成了。这也是 Jupyter Notebook 在数据分析领域如此流行的核心原因。6. Jupyter Notebook 与 JupyterLab 怎么选前面提到JupyterLab 是 Jupyter 项目的下一代用户界面。很多读者问到二者区别这里具体展开。从界面看Jupyter Notebook 是单文档界面一个浏览器标签页只能打开一个 Notebook 文件。而 JupyterLab 是多文档工作区可以在同一个页面内并排打开多个 Notebook、Python 终端、文本文件、CSV 文件等。它更像一个面向数据科学的“IDE”。从功能看JupyterLab 支持文件拖拽上传、Markdown 预览、代码主题定制、扩展插件管理。如果你需要同时处理多个文件JupyterLab 会更流畅。但两种工具的内核机制完全一样.ipynb文件也可以互相打开。对于初学者我建议先掌握经典 Jupyter Notebook因为它的操作更简单教程资源也更多。等熟悉了单元格、内核这些概念之后再切换到 JupyterLab几乎不需要重新学习。还有一个常见术语叫“Jupyter Notebook”在 Anaconda 中安装时可能会有多个包。Anaconda 默认自带的jupyter包和notebook包是不同的。一般来说直接使用 Anaconda 自带版本即可不需要额外安装。7. 常见问题与排查思路Jupyter Notebook 虽然使用方便但在安装和使用过程中也会遇到一些典型的坑。下面整理了几个高频问题。问题现象常见原因解决思路Windows 下 Jupyter Notebook 打开后页面空白浏览器缓存问题 / 服务端口异常清空浏览器缓存关闭命令行重新执行 jupyter notebook尝试换 Chrome/Firefox输入 jupyter 提示不是内部或外部命令Python 或 Anaconda 未加入 PATHWindows 用户通过 Anaconda Prompt 启动或检查 PATH 配置页面能打开但新建 Python 3 后内核连接失败缺少 ipykernel 包或内核未注册执行 python -m pip install ipykernel再执行 python -m ipykernel install --user想在 Chrome 或其他浏览器打开默认浏览器不一致通过修改 Jupyter 配置指定浏览器PyCharm 中无法使用 Jupyter Notebook未识别 Jupyter 服务在 PyCharm 的 Settings 中配置 Jupyter Server 地址7.1 Windows 打开后空白这个问题很常见。如果浏览器打开http://localhost:8888后一直白屏大概率不是 Jupyter 本身的问题而是浏览器缓存加载了旧的页面资源。先按Ctrl Shift Delete清除浏览器缓存再刷新页面。如果无效关闭命令行窗口中的 Jupyter 服务重新执行jupyter notebook --no-browser然后在浏览器手动输入提示的地址比如http://localhost:8888/?tokenxxxx。注意地址中的 token 参数启动服务时命令行会输出一串带 token 的 URL这个 token 相当于访问凭证如果丢失可以查看.jupyter目录下的配置或启动日志。7.2 如何指定其他浏览器打开如果系统默认浏览器不是 Chrome但你想让 Jupyter 用 Chrome 打开可以先生成配置文件然后指定浏览器路径。在命令行中执行jupyter notebook --generate-config生成配置文件后打开用户目录下的.jupyter\jupyter_notebook_config.py找到c.NotebookApp.browser配置项取消注释并修改。Windows 下 Chrome 配置示例c.NotebookApp.browser C:/Program Files/Google/Chrome/Application/chrome.exe %s保存配置后重启 Jupyter Notebook默认浏览器就会变成 Chrome。7.3 在 PyCharm 中使用 Jupyter NotebookPyCharm 专业版内置了对 Jupyter Notebook 的支持可以直接打开.ipynb文件。社区版则需要额外配置。最简便的方式是在 PyCharm 的终端中运行jupyter notebookPyCharm 会把终端当作命令行使用并在浏览器中打开 Notebook。这种方式对任何版本都适用。另外PyCharm 专业版还可以将普通.py文件中的代码选中后发送到 Jupyter 内核执行这样既能享受 IDE 的代码补全又能体验交互式输出的方便。8. 最佳实践与工程建议随着使用时间变长你会慢慢发现 Jupyter Notebook 用得好不好差距其实很大。下面分享几条长期使用积累下来的建议。8.1 建立规范的工作目录一个项目对应一个文件夹项目内的数据文件、代码文件、输出图片分开存放。不要把所有.ipynb文件堆在同一个目录下。启动 Jupyter Notebook 时在对应项目目录中启动这样 Notebook 中的相对路径才不会乱。8.2 保持单元格的原子性一个单元格只做一件事。比如数据读取一个单元格数据清洗一个单元格统计分析一个单元格可视化一个单元格。这样不仅代码可读性更强出错时也能快速定位到问题单元格。同时不要在一个 Notebook 文件中写太长的流程如果某个 Notebook 超过几百个单元格可以考虑拆分成多个 Notebook或者把公共函数提取到.py文件中再导入。8.3 关注代码的执行顺序Notebook 有一个隐蔽的坑单元格的执行顺序并不一定是从上到下。你完全可以先运行下面的单元格再运行上面的单元格内核状态是累积的。这可能导致 Notebook 中的代码虽然看起来能运行但换个顺序重新执行就会报错。建议使用“Kernel - Restart Run All”从头到尾完整执行一遍确保整个 Notebook 的独立性。在提交分析报告之前这是很有价值的检查步骤。8.4 数据安全和权限意识在实际项目中如果使用 Notebook 连接数据库尽量使用只读账号进行分析操作。不要在生产数据库上用 Notebook 直接执行 DDL 或 DELETE 语句。虽然 Notebook 本身没有特殊权限概念但底层 Python 代码可以执行任何 SQL误操作风险很大。另外数据库连接信息不要硬编码在工作代码中可以通过环境变量或外部配置文件读取避免敏感信息泄露。8.5 使用版本控制时注意清理输出把 Notebook 放入 Git 仓库时.ipynb文件里会保存单元格输出包括图片和大量的数据内容这会导致文件变更非常大代码审查困难。可以安装nbstripout工具来清理输出或者在保存前手动清除输出。当然如果你是要保留分析结果的报告型 Notebook则不需要清理。8.6 安装扩展时注意版本兼容Jupyter Notebook 支持大量扩展插件例如代码自动补全、目录导航、主题美化等。但安装扩展前要确认插件和当前 Jupyter 版本是否兼容。不兼容的扩展可能导致 Notebook 无法正常加载遇到这种情况可以先禁用扩展再检查是否有版本冲突。Anaconda 用户可以通过 conda 安装扩展这样 conda 会自动处理依赖关系比直接下载 GitHub 项目更稳定。这篇文章从 Jupyter Notebook 的概念讲起逐步拆解了 Anaconda 和 pip 两种安装方式介绍了启动、单元格操作、快捷键以及一个完整的数据分析示例最后整理了常见报错和工程实践经验。如果你照着操作完成了一遍示例就说明已经具备独立使用 Jupyter Notebook 做数据分析的基础能力了。接下来可以继续学习 pandas 的进阶操作比如合并、透视表、时间序列处理或者学习 Matplotlib、Seaborn 更进阶的绘图技巧。如果手头有真实的业务数据强烈建议拿一个 Excel 表格导入 Jupyter Notebook 中尝试分析和可视化在实践中遇到报错时再回来对照本文的排查思路通常都能找到解决方向。
返回列表