查看原文
其他

工具&方法丨经济学圈特供 使用Jupyter Notebook的12个小技巧

威武哥 数据Seminar 2021-06-03



师者,所以传道受业解惑也!人非生而知之者,孰能无惑?惑而不从师,其为惑也,终不解矣。

——《师说》



在这里首先祝所有老师教师节快乐~



之前我们介绍了 Jupyter Notebook 这款实用高效的应用程序,在其提供的环境中,可以记录代码、运行代码,完成数据可视化并查看结果(点此回顾)。
在我看来,经济学圈的学子们也应该学会利用Python来处理数据、统计建模,毕竟诸如 Excel、Stata 这类软件处理大数据的能力确实捉襟见肘。
当然了,神器之所以为神器,不仅仅是前文说的各种好处,它在具体使用过程中还有不少方便的小技巧,为你提高工作效率、节省时间作出贡献。下面就给大家介绍一些日常使用较为频繁的一些使用技巧。




1.快捷键


勤用快捷键可以节省很多时间!
命令行模式下按H键或者直接在Jupyter在顶部菜单中依次点击:Help > Keyboard Shortcuts 。



2、多行输出


一般情况下一个 Cell 后只能输出一个结果——

若想要实现多行输出,请在Cell开头添加以下代码——

from IPython.core.interactiveshell import InteractiveShell InteractiveShell.ast_node_interactivity = 'all' # 默认为'last',即输出最后一个结果

左右滑动查看更多

于是,上面的输出结果就可变为——




3、markdown的用法


Markdown 是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。而 Jupyter Notebook就可以支持Markdown的书写,这也就是为什么它可以将文字、代码、图形写成一份漂亮的报告。

在输入具体格式前,请将格式先调成标记markdown

然后,你可以尝试输入以下内容——

# 这是一级标题

## 这是二级标题

### 这是三级标题


**这是加粗的文字**<br>

*这是倾斜的文字*`<br>

***这是斜体加粗的文字***<br>

~~这是加删除线的文字~~<br>


>这是引用的内容

>>这是引用的内容

>>>这是引用的内容


---

----

***

*****


看一下,最后显示出来的是不是这样的

注意:<br>的意思是换行

更多有关Markdown的语法,可以前往以下网址学习
https://www.jianshu.com/p/191d1e21f7ed



4、LaTex的用法(公式编辑器)


某些时候,你可能需要在笔记里写数学公式,值得说道的是,诚如 Word 这种大家几乎片刻不离手的工具,你也许都会抱怨其编辑数学公式过于麻烦,对于 Jupyter Notebook ,我猜你也会有这方面的困惑。放心,Jupyter Notebook 的 Markdown 单元是支持 LateX 公式编辑的!如果你熟悉 Latex 语法,在这输入数学公式可就是“纵享丝滑”的体验了。
你可以尝试在 Markdown 格式下输入以下内容——

$$3^2+4^2=5^2$$

\begin{equation}

1+2+3+\dots+(n-1)+n = \frac{n(n+1)}{2}

\end{equation}


按下Shift + Enter后,公式就打印出来了,是不是很方便!

倘若你不熟悉 Latex 语法,问题也不大,尝试写几个公式你就会了,以下网址可以供你参考学习,保存下来,有需要再查找对应的语法也是很方便的。
http://www.mohu.org/info/symbols/symbols.htm
https://blog.csdn.net/Jiajikang_jjk/article/details/80341322




5、用 ? 输出帮助提示:快速语法说明


在使用过程中,我们难免会遇到一些我们并不清楚语法格式,查找官方文档是一种解决方案,不过在Jupyter Notebook里内置了快速链接官方文档的用法(类似 Stata 的help命令),在你需要查找的函数(或库名)前敲入?就可浏览快速语法说明。

注:该图未截取完全




6、魔法函数


在 Jupyter Notebook 的命令模式下,除了一般的python代码编辑外,它还支持一些其他的编程语言,如R、Stata等等,使用这些语言的前提是需要使用魔法函数(此处还需要在 Jupyter Notebook添加R、Stata的环境变量,感兴趣的可以自行搜索教程)。
魔法函数分为两种,一种是line magics,另外一种cell magics。前者是通过在前面加%,表示只在本行有效。后者是通过在前面加%%,表示magic在整个cell单元有效。
以经济学圈最广泛使用的 Stata 为例,如果我想在 Jupyter Notebook 中写 Stata命令的话,就可以使用%%stata这个魔法函数。
事先请安装两个模块:
pip install ipystatapip install psutil
左右滑动查看更多
然后就可以在 Cell 中一边输入代码一边看到结果了。

在Cell中输入%lsmagic可以看到所有的 magic 命令。

一些常用的魔法函数命令的示例:
https://blog.csdn.net/u011213419/article/details/81299282




7、抑制末尾函数输出


当我们绘制图像的时候,有时图像上方会出现一个函数的输出,比如下面这个——

如果不想要这行输出,可以直接在代码末加上一个分号。
from numpy.random import randnplt.plot(randn(30).cumsum(), 'ko--');
左右滑动查看更多




8、执行Shell代码


Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁,它既是一种命令语言,又是一种程序设计语言,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。在 Jupyter Notebook 中执行 shell 命令非常容易,直接在shell命令前加一个即可。
!ls # 列出当前目录下的文件,windows系统请用!dir这个命令

左右滑动查看更多

常用的 Shell 命令:
https://www.jianshu.com/p/855e475d3cb8




9、多光标操作


Jupyter Notebook支持多光标操作,与 Sublime Text 类似。按住 Alt 拖拽鼠标选定操作区域后,再按一下右方向键即可。点击任何位置返回单光标操作。

图片来源于网络




10、分享文档


使用 Jupyter Notebook的一个好处是可以把.ipynb格式的文件另存为其他格式,再分享其他人。




11、保存记录点


Jupyter Notebook 还有一个很酷的功能:记录点。你可以为当前的 notebook 文件创建一个记录点,保存当前文件的所有状态。创建记录点之后,你可以随时返回到当前的状态,撤销这期间做出的任何修改。
要创建一个新的记录点,你只需要在菜单栏上选择 File(文件)-> Save and Checkpoint(保存记录点)即可。点完之后,你就会在标题旁看到 Checkpoint 保存的提示:
如果你想要返回到之前的 Checkpoint,你只需要在菜单栏上选择 File(文件)-> Revert to Checkpoint(返回到记录点),并点击对应的记录点的时间戳即可。




12、更清晰的图片


熟悉 Python 和在 Jupyter Notebook 的人,用matplotlib画的图放大后会略显“渣像素”。实际上,只要多加一行配置,就能够让 Matplotlib 在 Jupyter Notebook 上面输出高清矢量图了:
import matplotlibimport matplotlib.pyplot as plt%matplotlib inline%config InlineBackend.figure_format = 'svg'
左右滑动查看更多
上面的最后一行指定了输出的格式是 svg,这样浏览器就能为你渲染矢量图了。下面上两张比较图:

注:以上两图来源于知乎
以上给大家讲述了 Jupyter Notebook 十二个小技巧。当然,这款神器的强大不仅仅是这些功能,还有很多其他功能,大家可以在不断实践中探索,相信大家越用会越喜欢的。







►往期推荐

回复【Python】👉简单有用易上手

回复【学术前沿】👉机器学习丨大数据

回复【数据资源】👉公开数据

回复【可视化】👉你心心念念的数据呈现

回复【老姚专栏】👉老姚趣谈值得一看


►一周热文

学术前沿 | 行政大数据的政策研究价值

特别推荐 | “正则表达式”在工业企业数据库匹配中的运用(一)

特别推荐丨老姚专栏:科学方法两则——证伪主义和溯因推理

数据呈现 | 用R绘制和弦图,解读大健康产业经济数据

工具&方法 | 4张卡片,Python命令大集合





数据Seminar

这里是大数据、分析技术与学术研究的三叉路口


作者:威武哥(叶武威)审阅:杨奇明编辑:青酱






    欢迎扫描👇二维码添加关注    


    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存