提升数据科学体验:Jupyter Notebook的10个常用扩展

本文介绍Jupyter Notebook的10个常用扩展,提升数据科学工作效率。

原文标题:Jupyter Notebook的10个常用扩展介绍

原文作者:数据派THU

冷月清谈:

Jupyter Notebook是一个广泛应用于数据科学的开源工具,具备强大的扩展性。本文介绍了10个常用的Jupyter Notebook扩展,包括提升编码效率的Hinterland、改善导航的Table of Contents、确保文本准确性的Spellchecker、显示执行时间的ExecuteTime等。这些扩展分别为用户提供了如自动代码完成、动态目录创建、拼写检查、性能分析、行号管理等功能,进一步提升了用户的数据分析和展示体验。同时,用户通过pip或conda可以轻松安装这些扩展,增强自己的Jupyter Notebook使用体验。无论是初学者还是资深用户,这些扩展都能显著提高工作效率。

怜星夜思:

1、你最常用的Jupyter Notebook扩展是什么?为什么?
2、对于新手,如何选择适合自己的Jupyter Notebook扩展?
3、你觉得哪些扩展会对团队协作有所帮助?

原文内容

图片
来源:DeepHub IMBA

本文约1600字,建议阅读5分钟

本文将探索Jupyter Notebook提升我们数据科学经验的强大扩展组件。


Jupyter Notebook(前身为IPython  Notebook)是一种开源的交互式计算和数据可视化的工具,广泛用于数据科学、机器学习、科学研究和教育等领域。它提供了一个基于Web的界面,允许用户创建和共享文档,这些文档包含实时代码、方程、可视化和文本。


在数据科学和人工智能领域,Jupyter Notebook是探索数据和开发人工智能模型的重要工具。它的交互式设置允许逐步执行代码,对于调整机器学习模型和可视化数据特别有用。Jupyter结合了代码、文本和图形,非常适合解释人工智能概念和数据分析。


Jupyter Notebook中的扩展与其他软件平台中的插件或附加组件相当。它们扩展了Notebook的核心功能,可以为我们提供从简单的界面增强到提升数据操作和可视化的高级功能。使用户能够根据自己的需要精确地定制环境,使Jupyter Notebook成为一个更通用、适应性更强的工具,可用于各种任务。



在本文中,我们将探索Jupyter Notebook提升我们数据科学经验的强大扩展组件。


利用先进的Jupyter Notebook扩展可以改变您的数据分析和演示体验。“Hinterland”提高编码效率,而“Table of Contents”和“Spellchecker”可以提高导航和准确性。' ExecuteTime '和' Toggle all line number '有助于代码优化和可读性。为了获得更具交互性的体验,“Live Markdown Preview”和“Runtools”提供了实时Markdown渲染和增强的单元格执行控制。“Codefolding”和“Code Prettifier”这样的扩展简化了编码界面,使其更干净并且易于管理。


如何使用Jupyter Notebook扩展


要使用这些扩展,通常需要使用pip或conda安装它们,并在Jupyter环境中启用它们。某些扩展可能需要额外的依赖项或具有特定的兼容性要求。


首先,在Anaconda命令提示符或终端中运行以下代码来安装扩展。


pip install jupyter_contrib_nbextensions && jupyter contrib nbextension install


如果你是windows的话可以直接在anaconda管理界面操作




这时再打开Jupyter笔记本将有一个名为“nbeextensions”的选项卡。



常用的扩展介绍


1、Hinterland


这个扩展通过提供自动代码完成建议来提高编码效率。Hinterland提供了一个潜在匹配列表,加快了编码过程,这在处理长或复杂的函数名时特别有用。它减少了打字错误和语法错误的可能性,简化了开发工作流程。


图片


2、Table of Contents


它在笔记本中创建了一个动态目录,显著改善了冗长内容的导航。可以通过点击标题快速跳转到不同的部分。这对于拥有大量笔记本的数据科学家特别有用,可以方便地访问其分析或报告的各个部分。


图片


3、Spellchecker


Spellchecker扫描笔记本中的文本,突出显示拼写错误。这个功能对于确保笔记本中的文档、笔记和解释没有错误且易于理解是非常宝贵的。


图片


4、ExecuteTime


这个扩展可以显示每个单元格的执行时间。它有利于性能分析,有助于识别代码中的瓶颈。了解哪些部分运行时间最长,可以让优化代码以获得更高的效率。



5、Toggle all line numbers


这是一个简单而强大的代码调试和审查工具。它可以显示或隐藏所有单元格中的行号。这在查看代码中的错误或与他人协作时特别有用。


图片


6、Runtools


Runtools可以提供额外的单元执行控制,增强运行的灵活性。功能包括运行当前单元以上或以下的所有单元,这对于在不执行整个文档的情况下测试不同部分非常方便。


图片


7、Highlighted Selected Word


每当你选择代码中的一个词时,这个扩展自动突出显示该词的所有其他实例。这于代码分析和编辑非常有用,特别是在大型笔记本中,它有助于快速定位和修改特定的变量或函数。


图片


8、Tree Filter


图片


通过添加搜索和过滤功能改进了文件列表。这个扩展使管理和查找文件更容易,特别是在处理许多文件时。


9、Codefolding


折叠或折叠代码块,使读取大型代码单元更容易访问和更方便。


图片


10、Code Prettifier


根据各种编码标准自动格式化代码,这对于维护代码质量,确保一致性和可读性至关重要。


图片


以上就是常用的扩展介绍,还有其他很多的扩展,额可以查看官网地址:
https://jupytercontribnbextensions.readthedocs.io/en/latest/nbextensions.html


主题


最后我们再说说主题,一般模型的Jupyter Notebook没有主题,就是一个简单的白色页面,但有一个第三方扩展和工具,允许我们更改或自定义主题,


可以使用Python的包管理器' pip '安装' jupyterthemes '包:


pip install jupyterthemes


安装完成后,可以使用以下命令从终端或命令提示符切换主题:


jt -t themename


主题哪里找呢?使用下面命令可以列出所有主题


jt -l


然后选择一个你喜欢的主题,就可以了,例如下面的配色



Jupyter Notebook的主题通常用于增强可读性,提供减少眼睛疲劳的配色方案,例如夜间模式,请根据个人审美偏好自行设置。


总结


使用 Jupyter Notebook 可以方便地进行数据探索、模型训练、报告撰写等任务。而扩展组件可以扩展Jupyter Notebook 的基本功能,无论是在操作数据、可视化趋势还是展示发现,扩展都可以增强工作流程,使数据科学工作更加简便和高效。


无论你是初学者还是经验丰富的数据科学家,将这些扩展集成到您的Jupyter环境中都可以显著提高生产力和效率。


编辑:于腾凯

校对:林亦霖

新手可以从类似Spellchecker这样的扩展开始,它能帮助确保文档质量,减少不必要的错误,慢慢适应后再尝试其他复杂的扩展。

可以尝试在实际工作中逐渐添加扩展,看看哪个最符合自己的需求,比如根据自己的工作流加入Run是最好的选择。

我认为Toggle all line numbers和RunTools对团队协作很有帮助,能够方便团队成员共同审查代码和测试不同部分。

Hinterland和Code Prettifier也不错,能帮助团队保持一致的编码风格,避免风格不统一产生的困扰。

我觉得Table of Contents非常重要,特别是当多人合写一个Notebook时,能够高效导航每个人的贡献部分。

我建议新手可以先试试Hinterland和Table of Contents这两个扩展。它们都很基础,但能显著提升体验。

我最常用的扩展是Hinterland。它的自动完成功能真的提高了我的编码效率,特别是在处理复杂函数时,能大大减少错误。

我觉得Table of Contents很实用,尤其是在处理长文档时。能够快速跳转到各个部分,感觉整个工作流程都变得顺畅了。

我用得最多的是Spellchecker,确保我的文档没有拼写错误很重要,尤其是在写报告时。