原文:
https://towardsdatascience.com/4-awesome-tips-for-enhancing-jupyter-notebooks-4d8905f926c5
对于所有希望分享自己工作成果的开发人员来说,Jupyter Notebook是一个非常棒的工具。它们提供了一种共享笔记本的简单方式——文本、代码和图形的组合,旨在增强我们向受众传达信息的方式。它们广泛应用于数据分析和数据科学等领域。
然而,我们大多数人实际上只是知道Jupyter Notebook的皮毛。我们使用编写Python代码和显示图形的基本特性。但是你知道吗?Jupyter Notebook上有很多可定制的特性可以增强它的功能。酷的选择,可以使你的Jupyter Notebook写得更有效率,更有效的表达。
这里有4个提高Jupyter Notebook的妙招!
01
执行Shell命令
技术/编程环境中的shell是一种与计算机进行文本交互的方式。最流行的Unix shell是Bash(又是Bourne shell)。Bash是您可以在任何Linux机器上找到的终端的默认shell。
在使用Python时,经常需要在编写Python代码和使用shell之间来回切换。例如,您可能希望使用Python从磁盘读取某个文件,因此需要检查确切的名称。通常情况下,您只需转到终端,输入ls,就可以得到当前目录下所有文件和文件夹的列表。来回切换是非常乏味和低效的。
真正酷的是,Jupyter能够执行shell命令,而不需要离开浏览器。您所要做的就是在shell命令之前加上一个感叹号!在命令行上工作的任何命令都可以在Python Jupyter笔记本中使用。
# Listing folder contents>>> !lsmynotebook.ipynb stuff.txt
# Getting the current directory>>> !pwd/home/george/github/project_1
# Printing from Bash >>> !echo "Pizza is delicious!"Pizza is delicious!
我们还可以将shell命令的输出分配给Python变量,如下面的代码所示。
# Getting the current directory. # The variable "X" now contains ["/home/george/github/project_1"]X = !pwd
02
更换主题
许多文本编辑器和编程器都有可定制的主题。最受欢迎的一款是色调较暗的主题,比如monaki,因为当你整天盯着屏幕时,眼睛会感觉更舒服。幸运的是,Jupyter有一个允许选择主题的插件。
要安装插件,只需在你的终端运行pip命令:
pip install jupyterthemes
你可以这样列出可用的主题:
jt -l
在撰写本文时,可以找到以下主题:
chesterishgrade3gruvboxdgruvboxlmonokaioceans16onedorksolarizeddsolarizedl
看看下面展示的一些。许多漂亮的色彩选择!
gruvboxl
solarizedd
grade3
03
Notebook扩展
Jupyter Notebook扩展- nbextensions是JavaScript模块,你可以用来增强功能和使用笔记本。这些扩展本质上修改了Jupyter UI以获得更健壮的功能。
我们将通过pip安装nbextensions:
pip install jupyter_contrib_nbextensions jupyter contrib nbextension install
安装完成后,启动Jupyter。您将看到一个名为nbextense的新选项卡。一旦你选择它,你会看到许多木星笔记本扩展选项!
您可以通过快速的谷歌搜索来查找这些扩展。我在下面强调了一些最有用的。
(1)目录
正如其名所描述的,目录根据标签#在记事本中创建的标题为您的记事本自动生成一个目录。例如,我在下图中创建的标题如下:
# This is a super big title## This is a big title### This is a medium title#### This is a small title
左边的目录生成得很好。表格中的每个标题都有一个链接,双击就可以直接进入该部分。这是超级方便的时候,你的笔记本开始变大,你有许多章节:
(2)代码提示Hinterland
代码补全是大多数编辑器中非常常见的特性,特别是Python的PyCharm。开发人员喜欢它,因为它使他们的工作更容易,不必记住每一个命令,因为他们知道他们的IDE将为他们清理东西。
Hinterland允许在Jupyter Notebook中自动完成代码。当你打字时,建议就会呈现在你面前。这在您从外部库搜索命令时是最值得注意的,如下面的示例所示。超级方便!
(3)拆分单元格
拆分单元格允许您并排查看两个单元格。当你有2个相关的单元格时,这是非常方便的,例如一个描述和它所引用的可视化。
04
使用Qgrid探索数据框架
我们的最后一站是Qgrid,这是一个工具,它允许您在不使用任何复杂的Pandas代码的情况下探索和编辑您的数据流。
Qgrid在你的Jupyter notebook中以交互的方式呈现Pandas数据。通过这种呈现,您可以使用滚动、排序和筛选等直观的控件,还可以通过双击所需的单元格来编辑数据aframe。
让我们开始安装Qgrid:
pip install qgridjupyter nbextension enable --py --sys-prefix widgetsnbextension
要使用Qgrid呈现数据aframe,只需导入它,然后将数据aframe传递给show_grid函数,如下所示:
import qgridqgrid_widget = qgrid.show_grid(df, show_toolbar=True)qgrid_widget
这样做将显示dataframe与许多交互选项:
还可以通过向show_grid函数传递更多参数来启用更多的交互选项。你可以在官方的GitHub页面上阅读更多关于Qgrid完整功能的细节。
本文分享自 Python与机器学习之路 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!