引言
Jupyter Notebook 是一个交互式计算环境,它允许创建包含代码、文本和可视化内容的文档
文章目录
- 引言
- 一、基本步骤
- 1.1 启动 Jupyter Notebook
- 1.2 使用 Jupyter Notebook 仪表板
- 1.3 在笔记本中工作
- 1.4 常用快捷键
- 1.5 导出和分享笔记本
- 二、进阶用法
- 2.1 组织笔记本结构
- 2.2 编写清晰的代码
- 2.3 使用魔术命令
- 2.4 管理单元格输出
- 2.5 使用交互式小部件
- 2.6 代码单元格管理
- 2.7 利用扩展功能
- 2.8 数据分析最佳实践
- 2.9. 资源管理
- 2.10 安全性和隐私
一、基本步骤
以下是使用 Jupyter Notebook 的一些基本步骤:
1.1 启动 Jupyter Notebook
- 打开命令行(终端):
在 Windows 上,可以使用命令提示符或 Anaconda Prompt,在 macOS 或 Linux 上,使用终端 - 导航到工作目录:
使用cd
命令导航到想保存笔记本的目录 - 启动 Jupyter Notebook:
输入以下命令并按回车:
jupyter notebook
这将启动 Jupyter 服务器,并在默认的 Web 浏览器中打开 Jupyter Notebook 的仪表板,如图所示:
1.2 使用 Jupyter Notebook 仪表板
仪表板显示了当前目录下的文件和文件夹,以下是一些基本操作:
-
新建笔记本:点击右上角的“新建”按钮,选择 Python3 或其他想使用的内核来创建一个新的笔记本、文件夹或终端
-
打开笔记本:点击已存在的笔记本文件名,如图所示:
-
重命名笔记本:点击笔记本文件名旁边的复选框,然后点击“重命名”按钮,如图所示:
-
删除笔记本:选择笔记本,然后点击“删除”按钮,如图所示:
1.3 在笔记本中工作
一旦打开或创建了一个笔记本,可以开始编写代码和文本
- 添加新单元格:点击“+”按钮或使用菜单中的“插入”选项来添加新单元格
- 选择单元格类型:
- 代码(Code):用于编写和执行代码
- Markdown:用于编写格式化的文本和内联的 LaTeX 数学表达式
- 原始NBConvert:用于原始文本
- 编辑单元格:点击单元格,开始输入文本或代码
- 运行单元格:
- 按下
Shift + Enter
来运行当前单元格并选择下面的单元格 - 按下
Alt + Enter
来运行当前单元格并在下面插入一个新单元格 - 按下
Ctrl + Enter
来运行当前单元格而不移动焦点
- 按下
- 保存笔记本:使用菜单中的“文件”选项,然后选择“保存和检查点”或使用快捷键
Ctrl + S
1.4 常用快捷键
Shift + Enter
:运行当前单元格,选择下面的单元格Alt + Enter
:运行当前单元格,并在下面插入一个新单元格Ctrl + Enter
:运行当前单元格A
:在上方插入新单元格B
:在下方插入新单元格D + D
(两次D):删除选中的单元格M
:将当前单元格转换为 Markdown 单元格Y
:将当前单元格转换为代码单元格
1.5 导出和分享笔记本
- 导出:可以将笔记本导出为多种格式,如 HTML、PDF、Markdown 或纯 Python 脚本
- 分享:Jupyter Notebook 可以通过电子邮件、Dropbox、GitHub 或其他在线平台轻松分享
通过这些基本步骤,可以开始使用 Jupyter Notebook 进行数据探索、分析、可视化以及教学和学习
二、进阶用法
遵循以下实践和建议,以提高工作效率和代码质量
2.1 组织笔记本结构
- 使用Markdown单元格:为笔记本添加清晰的标题、子标题和章节描述,使用Markdown格式来提高可读性
- 分割内容:将笔记本分割成不同的部分,每个部分使用Markdown单元格进行说明,然后是相应的代码单元格
- 使用目录:对于较长的笔记本,可以在顶部创建一个目录,方便快速导航
2.2 编写清晰的代码
- 遵循PEP 8:遵守Python编码标准PEP 8,保持代码格式一致
- 使用注释:在代码单元格中添加注释,解释复杂的逻辑或重要的步骤
- 避免冗余:删除不再需要的代码,保持笔记本整洁
2.3 使用魔术命令
- %matplotlib inline:用于在笔记本中内联显示图表
- %load_ext:加载扩展,如
line_profiler
用于性能分析 - %timeit:测量代码执行时间
2.4 管理单元格输出
- 清除输出:使用“单元格”菜单中的“全部清除输出”来清理笔记本
- 禁用代码输出:在代码单元格后面添加一个分号
;
来阻止输出显示 - 折叠长输出:对于长输出,使用
out = _
(下划线)来保存输出,而不立即显示
2.5 使用交互式小部件
- ipywidgets:使用
ipywidgets
库创建滑块、下拉菜单和其他交互式小部件,使笔记本更加动态
2.6 代码单元格管理
- 单元格合并:使用“编辑”菜单中的“合并单元格”来合并多个单元格
- 单元格拆分:将一个单元格拆分成多个单元格,以细化代码块
2.7 利用扩展功能
- 安装扩展:使用
nbextensions
来安装和启用Jupyter Notebook扩展,如代码折叠、预览Markdown等 - 使用Nbextensions:例如,
Table of Contents (2)
可以自动生成目录
2.8 数据分析最佳实践
- 使用Pandas:高效处理数据集
- 可视化:使用Matplotlib、Seaborn或Plotly进行数据可视化
- 版本控制:使用
git
进行版本控制,注意.ipynb_checkpoints
目录不应被提交到版本库
2.9. 资源管理
- 关闭未使用的内核:在Jupyter Dashboard中关闭不再需要的内核,释放资源
- 定期保存:定期保存笔记本,避免数据丢失
2.10 安全性和隐私
- 避免在笔记本中保存敏感数据:不要在笔记本中保存密码或敏感信息
- 使用JupyterHub:在多用户环境中使用JupyterHub来管理用户访问和资源
通过以上建议,可以更加优雅和高效地使用Jupyter Notebook,不仅提高个人工作效率,也能使笔记本更加易于理解和分享