随着全球范围内的远程工作模式的普及,越来越多的人开始在家中工作。在这样的背景下,一个积极且功能完善的工作环境显得尤为重要。本文将分享一些提升Jupyter Notebook使用效率的技巧,帮助在数据科学项目中更加得心应手。
Jupyter Notebook是一个广泛用于数据科学的环境,它是一个开源的Web应用程序,用于创建代码、显示可视化并执行数据分析。最初是为Julia、Python和R语言开发的,后来扩展支持了更多语言。
本文将介绍一系列Jupyter Notebook的技巧,包括交互式shell、多光标编辑、变量和命令历史查看、主题更换、单元格宽度调整、笔记本分享、幻灯片展示、性能分析等。
是否想过在同一单元格中获取多个输出?现在可以在同一个单元格中打印多个语句,这让能够一起分析多个输出,提供了更高的灵活性。
# 交互式shell代码示例
print("第一个输出")
print("第二个输出")
这是Jupyter Notebook中最令人兴奋的技巧之一。如果在多个地方犯了同样的错误,使用多光标可以一次性修正它们。只需要在想要编辑的地方按住CTRL并点击即可。
%who是一个有用的魔法命令,它返回全局空间中的变量及其类型。这在有一个很长的笔记本时特别有用。也可以传递参数来获取特定变量的列表。
# %who命令示例
%who code
当在Jupyter Notebook中编写代码时,它包含了至少100个单元格。在这个过程中,也删除了许多单元格。现在,当需要查看笔记本的流程摘要时,需要逐个单元格查看。可以想象,这是相当耗时的!
# %history命令示例
%history
数据科学需要大量的编码,每天使用相同的界面可能会感到单调。可以通过更换Jupyter Notebook的背景主题来使环境更加酷炫。
# 安装jupyter-themes
conda install -c conda-forge jupyterthemes
# 或者使用pip
pip install jupyterthemes
# 检查主题列表
jt -l
# 选择主题
jt -t chesterish
# 恢复默认主题
jt -r
使用高分辨率屏幕,想通过扩展单元格宽度来利用额外的空间。jupyter-themes提供了一个非常简单的方式来改变单元格的宽度和高度。
# 安装jupyter-themes
conda install -c conda-forge jupyterthemes
# 或者使用pip
pip install jupyterthemes
# 更改主题、单元格宽度、单元格高度
jt -t chesterish -cellw 100% lineh 170
经常遇到需要与同事或同行分享Jupyter笔记本的情况。Nbviewer是一个Web应用程序,允许输入Jupyter Notebook文件的URL,将该笔记本渲染为静态HTML网页,并给一个稳定的链接,可以与他人分享。
Jupyter提供了一个非常强大的工具,可以帮助将笔记本转换为有用的文档——Nbconvert。它用于将Jupyter的ipynb文件转换为另一种静态格式,包括HTML、LaTeX、PDF等。
# 打开Jupyter笔记本
# 在工具栏中,转到View>>Slideshow
# 现在每个单元格将在右上角有一个“Slide Type”。根据内容选择幻灯片类型
# 转到命令提示符/终端并输入以下命令 – “jupyter nbconvert [file_name] –to slides”
# 转到运行代码的文件夹,会找到,“[file_name.html]”
# 打开文件并使用键来更改幻灯片
# %prun代码示例
%prun code
# 安装py-heat-magic
!pip install py-heat-magic
# 在笔记本中加载热作为魔法函数 – %load_ext heat
# 在笔记本单元格中使用%%heat,想要获得热图
%%heat code