任务1.4 掌握Jupyter Notebook常用功能
任务描述
Jupyter Notebook(此前被称为IPython Notebook)是一个交互式笔记本,支持运行40多种编程语言。它本质上是一个支持实时代码、数学方程、可视化和Markdown的Web应用程序。对于数据分析,Jupyter Notebook最大的优点是可以重现整个分析过程,并将说明文字、代码、图表、公式和结论都整合在一个文档中。用户可以通过电子邮件、Dropbox、GitHub和Jupyter Notebook Viewer将分析结果分享给其他人。
任务分析
(1)掌握Jupyter Notebook的基本功能。
(2)掌握Jupyter Notebook的高级功能。
1.4.1 掌握Jupyter Notebook的基本功能
1.启动Jupyter Notebook
在安装完成Python、配置好环境变量并安装了Jupyter Notebook后,在Windows系统下的命令行或者在 Linux 系统下的终端输入命令“jupyter notebook”,即可启动 Jupyter Notebook,如图1-15所示。
图1-15 启动Jupyter Notebook
2.新建一个Notebook
打开Jupyter Notebook以后会在系统默认的浏览器中出现图1-16所示的界面。单击右上方的“New”下拉按钮,出现下拉列表,如图1-17所示。
图1-16 Jupyter Notebook主页
图1-17 New下拉列表
在下拉列表中选择需要创建的Notebook类型。其中,“Text File”为纯文本型,“Folder”为文件夹,“Python 3”表示Python运行脚本,灰色字体表示不可用项目。选择“Python 3”选项,进入Python脚本编辑界面,如图1-18所示。
图1-18 Jupyter Notebook Python 3脚本编辑界面
3.Jupyter Notebook的界面及其构成
Notebook文档由一系列单元(Cell)构成,主要有两种形式的单元,如图1-19所示。
图1-19 Jupyter Notebook的两种单元
(1)代码单元。这里是读者编写代码的地方,通过按“Shift+Enter”组合键运行代码,其结果显示在本单元下方。代码单元左边有“In [ ]:”编号,方便使用者查看代码的执行次序。
(2)Markdown单元。在这里可对文本进行编辑,采用Markdown的语法规范,可以设置文本格式,插入链接、图片甚至数学公式。同样,按“Shift+Enter”组合键可运行Markdown单元,显示格式化的文本。
Jupyter Notebook编辑界面类似于Linux的VIM编辑器界面,在Notebook中也有两种模式。
(1)编辑模式。用于编辑文本和代码。选中单元并按“Enter”键进入编辑模式,此时单元左侧显示绿色竖线,如图1-20所示。
图1-20 编辑模式
(2)命令模式。用于执行键盘输入的快捷命令。通过按“Esc”键进入命令模式,此时单元左侧显示蓝色竖线,如图1-21所示。
图1-21 命令模式
如果要使用快捷键,首先按“Esc”键进入命令模式,然后按相应的键实现对文档的操作。例如,切换到代码单元按“Y”键,切换到Markdown单元按“M”键,在本单元的下方增加一单元按“B”键,查看所有快捷命令按“H”键。
1.4.2 掌握Jupyter Notebook的高级功能
1.Markdown
Markdown是一种可以使用普通文本编辑器编写的标记语言。通过简单的标记语法,它可以使普通文本内容具有一定的格式。Jupyter Notebook 的 Markdown 单元比基础的Markdown的功能更加强大,下面将从标题、列表、字体、表格和数学公式编辑5个方面进行介绍。
(1)标题
标题是标明文章和作品等内容的简短语句。读者写报告或者写论文时,标题是不可或缺的,尤其是论文的章节等,需要使用不同级别的标题。Markdown作为一款排版的工具,一般使用类Atx形式,在首行前加一个“#”字符代表一级标题,加两个“#”字符代表二级标题,以此类推。图1-22和图1-23所示分别为Markdown的代码和展示效果。
(2)列表
列表是一种由数据项构成的有限序列,即按照一定的线性顺序排列而成的数据项的集合。列表一般分为两种:一种是无序列表,使用一些图标标记,没有序号,没有排列顺序;另一种是有序列表,使用数字标记,有排列顺序。Markdown对于无序列表,可使用星号、加号或者减号作为列表标记;Markdown对于有序列表,则使用数字“.”“ ”(一个空格)表示。图1-24和图1-25所示分别为列表的代码和运行结果。
图1-22 Jupyter Notebook中的Markdown的标题代码
图1-23 Jupyter Notebook中的Markdown的标题展示
图1-24 Jupyter Notebook中的Markdown的列表代码
图1-25 Jupyter Notebook中的Markdown的列表展示
(3)字体
文档中为了凸显部分内容,一般对文字使用加粗或斜体格式,使得该部分内容变得更加醒目。对于 Markdown 排版工具而言,通常使用星号“*”和下划线“_”作为标记字词的符号。前后有两个星号或下划线表示加粗,前后有3个星号或下划线表示斜体。图1-26和图1-27所示分别为加粗/斜体的代码和运行结果。
图1-26 Jupyter Notebook中的Markdown的加粗/斜体代码
图1-27 Jupyter Notebook中的Markdown的加粗/斜体展示
(4)表格
使用 Markdown 同样也可以绘制表格。代码的第一行表示表头。第二行分隔表头和主体部分。从第三行开始,每一行代表一个表格行。列与列之间用符号“|”隔开,表格每一行的两边也要有符号“|”。图1-28和图1-29所示分别为表格的代码和运行结果。
图1-28 Jupyter Notebook中的Markdown的表格代码
图1-29 Jupyter Notebook中的Markdown的表格展示
(5)数学公式编辑
LaTeX 是写科研论文的必备工具,不但能实现严格的文档排版,而且能编辑复杂的数学公式。在Jupyter Notebook的Markdown单元中也可以使用LaTeX来插入数学公式。在文本行中插入数学公式,应使用两个“$”符号,例如质能方程“$E = mc^2$”。如果要插入一个数学区块,则使用两个“$$”符号,比如用“$$ z= \frac{x}{y} $$”表示式(1-1)。
在输入上述公式的LaTeX表达式后,运行结果如图1-30所示。
图1-30 Jupyter Notebook中的Markdown的LaTeX语法示例
2.导出功能
Notebook还有一个强大的特性,就是导出功能。可以将Notebook导出为多种格式,如HTML、Markdown、reST、PDF(通过LaTeX)等格式。其中,导出PDF功能,可以让读者不用写LaTeX即可创建漂亮的PDF文档。读者还可以将Notebook作为网页发布在自己的网站上。甚至,可以导出为reST格式,作为软件库的文档。导出功能可通过选择“File”→“Download as”级联菜单中的命令实现,如图1-31所示。
图1-31 导出功能级联菜单