为你的Jupyter Notebooks注入一剂强心针
2019年07月28日 由 sunlei 发表
310354
0
Jupyter Notebooks是当今世界上最热门的Pythonistas编程环境,特别是对于那些热衷于机器学习和数据科学的人。几个月前,当我开始认真对待机器学习时,我发现了Jupyter Notebooks。起初,我只是感到惊讶,很喜欢浏览器里的一切。然而,我很快就失望了,发现老套的Jupyter Notebooks界面是非常基本的,缺乏一些有用的功能。就在那时,我决定去寻找一些Jupyter Notebooks的黑客。在本文中,我将介绍一些Jupyter Notebooks的附加组件/扩展和一些Jupyter命令,它们将增强您的Jupyter Notebooks,并提高您的工作效率。简而言之,给你的Jupyter Notebooks充充电。
一旦您按照下面的说明操作,您的Jupyter Notebooks将具有以下出色的功能(如果您愿意,还会有更多可能):
- 无需重新启动Jupyter Notebooks即可在飞行中的多个Conda环境之间切换。
- 第二步。单击“点击内容表”生成(您会喜欢这个!)
- 一个超级有用的弹出式窗口(我最喜欢的功能!),在这里你可以在一边玩,一边测试你的代码,而不需要在主笔记本上做任何修改。
- 代码折叠在代码单元格内。我想知道为什么这项功能已经不是Jupyter Notebooks的一部分了。
- 单击代码单元格隐藏,这是通过可视化讲述数据故事时的一个重要功能……人们通常对您的图形和图表感兴趣,而不是代码!
- 一个超级酷变量检查员!
- 标记单元格。
- Zenmode用于深夜的编码会话。
- ACode Snippetsmenu可以添加常用的python结构,如elist compositionson the fly。
- 最后,绝对是最好的功能,一个舒缓美丽的深蓝色方案,来拯救你的眼睛!
是时候充电了!
首先,我们将确保我们的笔记本有一个很好的黑色主题,对眼睛是舒缓的。如果你每天工作很长时间,白色背景会让你的眼睛流血。
# Kill and exit the Notebook server
# Make sure you are in the base conda environment
conda activate base
# install jupyterthemes
pip install jupyterthemes
# upgrade to latest version
pip install --upgrade jupyterthemes
安装和升级软件包后,运行以下命令,将您的白色主题的Jupyter Notebooks变成可爱的深蓝色午夜主题。你的眼睛会因此而爱上你。
# Enable Dark Mode
jt -t onedork -fs 95 -altp -tfs 11 -nfs 115 -cellw 88% -T
接下来,让我们看看是否可以将在Anaconda中创建的所有自定义环境作为内核添加到Jupyter Notebooks中。这将确保我们可以通过在内核菜单中简单地选择环境来切换环境。切换内核时不需要重启笔记本。
假设您在Anaconda中创建了两个自定义环境my_NLP和gym。要将这些添加到你的Jupyter Notebooks中,请遵循以下步骤,
# Stop and exit your Jupyter Notebook server first
# Activate your environment in the terminal
conda activate my_NLP
# Install the IPython Kernel
pip install ipykernel
# Link your environment with Jupyter
python -m ipykernel install --user --name=my_NLP
# Repeat steps for the other environment, gym.
conda activate gym
pip install ipykernel
python -m ipykernel install --user --name=gym
现在打开你的Jupyter Notebooks,进入Kernel菜单中的Change Kernel选项,然后……Boom!
您应该能够看到所有列在那里的内核,现在只需单击它们就可以激活它们。
这就是新添加的内核应该出现的地方。注意那舒缓的深蓝色主题。
对于我上面提到的所有其他很酷的功能,我们需要为Jupyter Notebooks安装一个名为nbextensions的东西。安装nbextensions很容易,只需执行以下步骤,
# Stop and exit your Jupyter Notebook server
# Make sure you are in the base environment
conda activate base
# Install the nbextensions
pip install jupyter_contrib_nbextensions
# Install the necessary JS and CSS files
jupyter contrib nbextension install –system
启动Jupyter Notebooks服务器,您现在应该会在打开页面中看到第四个选项Nbextensions。点击它可以看到你一直想在Jupyter Notebooks上看到的一组很棒的功能。
[caption id="attachment_42358" align="aligncenter" width="1310"]
Nbxtensions选项卡![/caption]
正如您在上面看到的,扩展列表非常庞大,乍一看甚至有点吓人。并不是所有的都有用,下面是我使用的,
- 目录(2)-在一次单击中生成整个笔记本的内容表,其中包含指向各个部分的超链接。
- 在我看来,Scratch绝对是最好的扩展。一个单独的空间,您可以在不干扰笔记本其余部分的情况下试验代码。
- 代码折叠这里不需要任何解释。
- 隐藏所有输入-隐藏所有代码单元格,同时保持输出和标记单元格可见。如果您试图向非技术人员解释结果,这是一个非常有用的特性。
- 变量检查器-将您从调试蓝调中拯救出来,类似于Spyder IDE中的变量检查器窗口。
- 拼写检查程序标记单元格中内容的拼写检查程序。
- ZenModeRemoves杂乱的屏幕,使您可以专注于什么是重要的,即代码。
- 代码片段菜单—一个很酷的代码片段集合,包含了从列表理解到熊猫和所有介于两者之间的代码片段。这是最好的部分?您可以修改小部件并添加您自己的自定义代码段。
上面的列表包含了我大部分使用的扩展,但鼓励您尝试其他扩展。
一些有趣的包括滚动、桌面美化器和Hinterland。
[caption id="attachment_42359" align="aligncenter" width="1319"]
代码段扩展与工作中的目录生成扩展一起使用。[/caption]
[caption id="attachment_42360" align="aligncenter" width="1312"]
便条簿扩展[/caption]
请告诉我您对Jupyter Notebooks的这些增强功能有何看法。如果您在安装扩展时遇到任何错误,请随时发表评论。
原文链接:https://towardsdatascience.com/supercharging-jupyter-notebooks-e22f5ad7ca18