第二弹!又来5个Jupyter Notebook使用技巧!
大家好,我是小五🧐
上次给大家分享了5个Jupyter Notebook使用技巧,看评论区的反响还不错,我就又把剩下的总结了一下。
分成了几篇,本文继续介绍5个有趣有用的Jupyter Notebook使用技巧 ~
1、执行shell命令
shell命令,用来与计算机进行文本交互。
举个栗子,我们正在jupyter notebook
中愉快地敲着代码的时候,突然发现有个库需要安装一下。就要用到命令行工具,但来回在shell和jupyter 之间进行切换太麻烦了。
其实在notebook中就可以直接运行shell
命令,在原有命令最前方加上英文感叹号!
即可。
!pip install xlwings
这样我们无需离开浏览器,只通过一个感叹号! 就在 Jupyter Notebook 中安装好了第三方库(执行shell命令),非常便捷。
注:和鲸等在线Notebook网站,也是!pip这样额外安装第三方库。
不当然,不仅仅安装第三方库需要会用到shell命令。
比如我们在对一堆数据集进行分析时,可以使用它来检查当前工作文件夹中可用的数据集。
!dir *.csv
2、隐藏部分输出信息
什么叫隐藏部分输出信息呢?
还是举例说明吧。
当我们使用Matplotlib
来画图时,会出现下图中蓝圈内的输出信息。
类似的输出信息,大部分情况下是不需要的,看起来也有些“多余”。
我们在语句的最后添加英文分号;
,就可以将这类输出信息隐藏掉。
还是上面的示例代码,改成这样再重新执行。
plt.scatter(x, y);
可以看到,“多余”的输出信息被隐藏掉了。
3、查看帮助信息
一个工具能够被快速查看帮助信息的话,对于初学者是巨大的帮助。
Jupyter Notebook中,在 Help
菜单中,您可以找到大部分常用库(包括 NumPy、Pandas、SciPy 和 Matplotlib)的在线文档直接链接。
而对于更细致的库、方法或变量,使用?
加方法名就可以很方便地查看帮助文档。
比如print?
就可以查看print的帮助文档。
4、使用 LaTeX
在上篇文章中,我特别推荐了Markdown写作。
编写代码的注释时,难免会需要进行编写运算公式。既然Jupyter Notebook支持了 Markdown ,我们就可以在 Markdown 单元格中编写LaTeX
,此时它将使用 MathJax 呈现为公式[1]。
比如在 Markdown 格式下的 cell 中执行以下文字:
$P(A \mid B) = \frac{P(B \mid A)P(A)}{P(B)}$
回车后就会输出公式:
具体 Markdown 中的LaTeX格式使用,大家可以自行去学习了解。
Markdown 是 notebooks 的重要组成部分,所以不要忘记代码搭配使用它!
5、在Jupyter上玩转CSS
前段时间我们分享过这样一篇文章:Pandas输出的表格竟然可以动起来?
里面提到在 jupyter notebook 环境上的输出,全是 html。因此我们只需要适当加上 css 就能让其可以交互起来[2]。而且 Pandas 本身就提供了一些方法让我们轻松添加样式,于是乎我们就可以搞出很多“新花样”~
这里再用实例演示一下(代码来自@小小明)
位移
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.rand(5, 2), columns=['data1', 'data2'])
df['key1'] = ['a', 'a', 'b', 'b', 'e']
df['key2'] = ['one', 'two', 'one', 'two', 'one']
df.style.set_table_styles([
{'selector': 'tr',
'props': [('transition-duration', '1s')]},
{'selector': 'tr:hover',
'props': [('transform', 'translate(90%)')]}
])
旋转
df.style.set_table_styles([
{'selector': 'tr',
'props': [('transition-duration', '1s')]},
{'selector': 'tr:hover',
'props': [('transform', ' rotate(360deg)')]}
])
具体原理:
先对目标元素设置过渡时间,参考:https://www.runoob.com/css3/css3-transitions.html。然后通过伪类hover设置鼠标移动到目标元素的特殊样式[3]。
上面两种样式变化使用了2D变化的两个方法,参考:https://www.runoob.com/css3/css3-2dtransforms.html
好了,今天又介绍了5个Jupyter Notebook
的使用小技巧。后面两篇将分别介绍魔法命令和实用插件,敬请期待。
觉得有技巧帮助到你提升效率/乐趣的话,别忘了给本文点个赞哦👍
参考资料
28 Jupyter Notebook Tips, Tricks, and Shortcuts: https://www.dataquest.io/blog/jupyter-notebook-tips-tricks-shortcuts/
[2]Pandas输出的表格竟然可以动起来?: https://mp.weixin.qq.com/s/0buwaI9o70_7rE3t18Fmaw
[3]小小明(代码实体): https://blog.csdn.net/as604049322/article/details/118303417