首页 > 自考资讯 > 高考百科

五种你从未听说过的Jupyter黑客技术

小条 2024-09-23

69227aab09f442afa3b5f810d6ba3d41~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1727655051&x-signature=Z1MpVI2FINH5ori%2Bu6l9N39o3Zw%3D Unsplash 上的照片,作者Sigmundon

Jupyter Notebook 是最受欢迎的集成开发环境之一,适用于几乎所有面向Python 的编程任务,包括数据科学、机器学习和科学计算。

交互式编码功能使其成为初学者和专家的首选工具。

然而,尽管Python 得到了广泛的使用,但许多用户并没有充分利用它的潜力。

因此,他们倾向于使用Jupyter 的默认界面/功能,在我看来,可以对其进行显着改进以提供更丰富的体验。

因此,在本文中,我们将向您展示5 个您可能不知道的很酷的Jupyter hack。

利用这个强大的工具将生产力和创造力释放到新的水平。

让我们开始吧!

1停止预览原始数据帧

当我将DataFrame 加载到Jupyter 中时,我通常会打印它并预览它。如下图:

f

托管在Deepnote

e51b6fe9a1034c7b8dd2317e994ec971~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1727655051&x-signature=xVdjuzbmefgCDNLz%2B5EiDaO%2BmSg%3D 照片由作者提供

然而,我们对这些数据的内容知之甚少。

因此,我们需要对数据进行分析,进行更深入的挖掘,这需要简单的代码迭代。

请改用Jupyter-DataTables。安装方法如下:

pip 安装jupyter-datatables

要使用它,请在Jupyter 中运行以下代码。

从jupyter_datatables 导入init_datatables_mode init_datatables_mode()

DataFrame 的默认预览中添加了许多有用的功能。

因此,当您打印DataFrame 时,它看起来会更漂亮,如下图所示。

fefabd16ff2a4a5f8c41fab331405b33~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1727655051&x-signature=b7Y6F5KUfrS%2BGx7hjYz2qWqCFG8%3D 来自作者

这种丰富的预览提供排序、过滤、导出和分页操作,以及列分布和数据类型。

2单击按钮即可为数据贴标签

并非所有数据都已预先标记。

因此,未标记的数据通常需要更多时间来注释或标记。

ipyannotate 允许您仅用几行代码即可完成注释,而不是在外部预览和注释文件或构建复杂的注释管道。

提供专门用于数据注释的Jupyter 小部件。

通过运行以下命令来安装它:

pip install ipyannotate jupyter nbextension 启用--py --sys-prefix ipyannotate

只需单击按钮即可轻松注释您的数据。因此,ipyannotate 可以将数据标签附加到按钮上。

假设您有一只猫和一只狗的照片(没有标签)。您可以像这样创建注释管道:

da323fd383e04a618075d9e9cbb1bfb6~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1727655051&x-signature=Xy9uw8BxzGho%2BUiUgj3y7TuVoRA%3D 来自作者

您只需单击相应的按钮即可为数据添加注释,如上图所示。

此外,您可以选择检索标签并在数据管道中使用它们。

3查看Jupyter中的文档

在使用Jupyter 时,我经常忘记函数参数并参考官方文档(或StackOverflow)。

但是,您可以在笔记本中查看该文档。

按Shift+Tab 打开“文档”面板。这非常方便并且节省时间,因为您不必每次都打开官方文档。

这是演示:

ef5ae64ad289447181c062fba7182ca9~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1727655051&x-signature=3ey%2FoSf4faTwyqR8BVTAADt%2FPKc%3D 来自作者

此功能也适用于自定义函数。

4执行Jupyter单元时获取通知

在Jupyter 单元中运行代码后,您经常希望跳到其他地方去做其他工作。

在这种情况下,您将必须重复返回Jupyter 标记以检查单元格是否已执行。

要解决这个问题,您可以使用jupyternotify 扩展的%%notify magic 命令。

顾名思义,它会在Jupyter 单元完成(成功或失败)后通过浏览器通知用户。

要安装,请运行以下命令:

pip 安装jupyternotify

接下来,加载扩展。

%load_ext jupyternotify

完成它!

如果您想要通知,请在单元格顶部键入以下魔术命令:

%%notify ## 在此输入代码

单元完成运行后,您将收到以下通知:

作者照片6673cb61e3f8446b818d9d0fce9289b4~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1727655051&x-signature=dPx%2Fji5Vni5eynKFEpE2eEu%2BI7E%3D

单击通知返回到Jupyter 选项卡。

5在运行时清除Jupyter Notebook中的单元格输出

使用Jupyter 时,它通常会打印出大量详细信息来跟踪代码的进度。

但是,如果输出面板中积累了大量详细信息,但您只对最新输出感兴趣,则可能会令人沮丧。

每次都必须滚动到输出的底部,这也很烦人。

要清除单元格的输出,可以使用IPython 包的clear-output 方法。

IPython 预装了Python,因此您无需安装它。

这个方法可以这样导入:

从IPython.display 导入clear_output

调用时,单元格的当前输出将被删除,并且可以打印最新的详细信息。

这是演示:

ad905c6f5c84411ca8a3311da7349919~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1727655051&x-signature=0EaK65GJe5XkRYn4WYnOboo8BUo%3D 来自作者

如上图所示,单元格将仅显示最新的输出。之前的输出将被清除。

额外提示

虽然上述提示将极大地丰富您的Jupyter 体验,但在使用Jupyter 时仍然有很多事情需要担心。

例如,Jupyter 不擅长协作。由于它在本地运行,因此无法在Jupyter 中构建实时协作功能,从而允许团队协作、添加评论、跟踪进度等。

此外,共享也可能是一个令人头疼的问题。如果您需要与其他人共享笔记本,唯一的方法是通过电子邮件发送或在线托管(例如在GitHub 上),然后共享链接。

最后,许多数据科学任务并不局限于Python。其中还包括SQL,它主要用于与组织的数据库进行交互。

然而,虽然可以将SQL 集成到Jupyter 中,但过程很麻烦。

解决方案

由于对这些限制感到沮丧,我开始寻找替代方案,很高兴找到了Deepnote。

您无需学习任何新知识即可使用它,Jupyter 的所有限制都立即被消除,并且它始终提供丰富的类似Jupyter 的体验。

共享、协作、使用SQL、无需编码即可创建图表、连接到数据库等等,所有这些都无缝集成到Deepnote 中。

我们知道Jupyter 倾向于为所有Python 用户提供共同的体验,但它并不能解决数据科学家的所有痛点,尤其是团队工作的数据科学家。

在我看来,Deepnote 是Jupyter 的升级版,适合所有数据驱动的项目。请尝试一下。

至此,本文结束。

恭喜。我使用Jupyter Notebook 学到了一些很酷的技巧。我们相信这些技巧一定会提高你的Python编程效率。

另外,我很想知道您最喜欢的使用Jupyter 笔记本的技巧。

感谢您一直以来的阅读!

版权声明:本文转载于网络,版权归作者所有。如有侵权,请联系本站编辑删除。

猜你喜欢