Jupyter入门与实战

978-7-115-55885-5
作者: 冯立超
译者:
编辑: 王峰松

图书目录:

详情

本书全面讲解Jupyter的功能、应用、体系架构、配置和部署等内容。全书共8章,前4章面向希望学习Python、数据科学及人工智能相关知识,但尚无软件开发基础的读者,以零起点的方式讲述Jupyter的功能与操作,并以Jupyter Notebook为工具,讲述Python的基础知识,以及使用Python开展数据科学工作的入门内容;后4章深入讲述Jupyter的高级应用、配置、管理,以及JupyterLab和JupyterHub等相关内容。本书尽量涵盖Jupyter各方面的内容,致力于成为一本Jupyter完全手册。 本书适合Jupyter及Python初学者阅读学习,也适合Python程序员,有Jupyter使用基础的软件开发人员、数据科学及人工智能的从业人员,配置和部署Jupyter系统的IT管理员阅读。

图书摘要

版权信息

书名:Jupyter入门与实战

ISBN:978-7-115-55885-5

本书由人民邮电出版社发行数字版。版权所有,侵权必究。

您购买的人民邮电出版社电子书仅供您个人使用,未经授权,不得以任何方式复制和传播本书内容。

我们愿意相信读者具有这样的良知和觉悟,与我们共同保护知识产权。

如果购买者有侵权行为,我们可能对该用户实施包括但不限于关闭该帐号等维权措施,并可能追究法律责任。


编  著 冯立超

责任编辑 王峰松

人民邮电出版社出版发行  北京市丰台区成寿寺路11号

邮编 100164  电子邮件 315@ptpress.com.cn

网址 http://www.ptpress.com.cn

读者服务热线:(010)81055410

反盗版热线:(010)81055315


本书全面讲解Jupyter的功能、应用、体系架构、配置和部署等内容。全书共8章,前4章面向希望学习Python、数据科学及人工智能相关知识,但尚无软件开发基础的读者,以零起点的方式讲述Jupyter的功能与操作,并以Jupyter Notebook为工具,讲述Python的基础知识,以及使用Python开展数据科学工作的入门内容;后4章深入讲述Jupyter的高级应用、配置、管理,以及JupyterLab和JupyterHub等相关内容。本书尽量涵盖Jupyter各方面的内容,致力于成为一本Jupyter完全手册。

本书适合Jupyter及Python初学者阅读学习,也适合Python程序员,有Jupyter使用基础的软件开发人员、数据科学及人工智能的从业人员,配置和部署Jupyter系统的IT管理员阅读。


Jupyter Notebook是在数据科学和机器学习领域非常流行的开发环境,被誉为每个数据科学家都应该掌握的工具。作为Web界面的交互式集成开发环境,我们无须离开Jupyter Notebook环境,就可以编写程序、运行代码、查看输出及可视化数据结果,还可以在其中编排文本内容、编写和显示复杂的数学公式等。

本书将全面讲述Jupyter Notebook的功能及应用。同时,我们将以Jupyter Notebook为工具,讲述Python的基础知识,并侧重讲述在Jupyter Notebook中使用Python开展数据科学工作的相关内容。

本书前4章针对初学者,全面讲述Jupyter Notebook的基本操作和Python的基础知识,让初学者能够轻松进入数据科学和机器学习领域,内容包括Jupyter入门、Jupyter Notebook操作详解、使用Jupyter学习Python、通过Jupyter开启数据科学之路。

后4章针对程序员、人工智能及机器学习专业人员或IT管理员,深入讲述Jupyter的体系架构、高级特性、多语言支持等知识,让专业读者深入掌握Jupyter,使Jupyter真正成为数据科学家的利器,内容包括Jupyter Notebook高级应用,配置和管理Jupyter、JupyterLab、JupyterHub。

本书提供部分示例代码供读者学习和测试,读者可以在异步社区网站下载。

在本书撰写过程中,人民邮电出版社的编辑给予了大力支持,并在内容架构、语言表述、排版风格等方面做了大量的工作。此外,冯思茗通读了书稿,对行文表述提出了许多建议,并测试了所有代码。在此一并致谢。

读者如有任何问题,可以通过电子邮箱Hiweb@Outlook.com与作者联系,也可以关注微信公众号HiMarathon和作者一起探讨。

冯立超 

2020年10月


本书由异步社区出品,社区(https://www.epubit.com/)为您提供相关资源和后续服务。

本书提供如下资源:

要获得以上配套资源,请在异步社区本书页面中点击,跳转到下载界面,按提示进行操作即可。注意:为保证购书读者的权益,该操作会给出相关提示,要求输入提取码进行验证。

如果您是教师,希望获得教学配套资源,请在社区本书页面中直接联系本书的责任编辑。

作者和编辑尽最大努力来确保书中内容的准确性,但难免会存在疏漏。欢迎您将发现的问题反馈给我们,帮助我们提升图书的质量。

当您发现错误时,请登录异步社区,按书名搜索,进入本书页面,点击“提交勘误”,输入勘误信息,点击“提交”按钮即可。本书的作者和编辑会对您提交的勘误进行审核,确认并接受后,您将获赠异步社区的100积分。积分可用于在异步社区兑换优惠券、样书或奖品。

我们的联系邮箱是 contact@epubit.com.cn。

如果您对本书有任何疑问或建议,请您发邮件给我们,并请在邮件标题中注明本书书名, 以便我们更高效地做出反馈。

如果您有兴趣出版图书、录制教学视频,或者参与图书翻译、技术审校等工作,可以发邮件给我们;有意出版图书的作者也可以到异步社区在线投稿(直接访问 www.epubit.com/selfpublish/submission 即可)。

如果您来自学校、培训机构或企业,想批量购买本书或异步社区出版的其他图书,也可以发邮件给我们。

如果您在网上发现有针对异步社区出品图书的各种形式的盗版行为,包括对图书全部或部分内容的非授权传播,请您将怀疑有侵权行为的链接发邮件给我们。您的这一举动是对作者权益的保护,也是我们持续为您提供有价值的内容的动力之源。

“异步社区”是人民邮电出版社旗下IT专业图书社区,致力于出版精品IT图书和相关学习产品,为作译者提供优质出版服务。异步社区创办于2015年8月,提供大量精品IT图书和电子书,以及高品质技术文章和视频课程。更多详情请访问异步社区官网https://www.epubit.com。

“异步图书”是由异步社区编辑团队策划出版的精品IT专业图书的品牌,依托于人民邮电出版社数十年的计算机图书出版积累和专业编辑团队,相关图书在封面上印有异步图书的LOGO。异步图书的出版领域包括软件开发、大数据、人工智能、软件测试、前端、网络技术等。

异步社区

微信服务号


本章讲述Jupyter Notebook的概念、安装过程与基本操作,让读者初步熟悉Jupyter Notebook的使用方法,并通过简单示例让读者快速体验Jupyter Notebook及Python的功能。

建议读者按书中的步骤动手操作,但不必拘泥于细节,也不必为不懂的概念所困扰。读者若遇到任何问题,可以多操作两遍,也可以暂时跳过问题,继续学习后续内容。待学完第3章再回顾这些问题时,多数都会迎刃而解。

Jupyter Notebook是在数据科学和机器学习领域中非常流行和实用的开发环境,被誉为每个数据科学家都应该掌握的工具。

Jupyter Notebook是Web界面的交互式集成开发环境。在该环境中,我们可以编写程序、运行代码、查看输出和可视化数据结果,还可以在其中编排文本内容、编写和查看复杂的数学公式等。在Jupyter官网首页,通过图示非常好地展示了Jupyter Notebook的功能效果。

如图1-1所示,其下层页面展示了Jupyter Notebook排好版的文本与可执行代码同在一页的效果,上层页面则优美地展示了洛伦茨微分方程的公式、描述、Python代码,以及运行代码后所显示的实时参数调整控件及其曲线图形效果。

图1-1

Jupyter Notebook起源于一个Python交互式开发环境项目IPython Notebook。该项目的目标是为Python提供一个强大的REPL交互式开发环境,即“读取用户输入-执行代码-输出结果-循环上述操作”(Read-Eval-Print Loop,REPL)的交互式开发环境。

IPython Notebook非常成功地实现了交互式开发环境以及强大的文档功能。后来,项目组把IPython和Python解释器剥离,实现了对多种语言的支持,将之命名为Jupyter。

目前Jupyter已经成为支持40余种语言的非常成功的交互式集成开发工具。

本书的目标就是以Jupyter为工具和媒介,带领所有对数据科学或软件开发感兴趣的读者,避开各种晦涩的专业术语,快速掌握相关知识。通过对Jupyter的轻松学习和动手练习,读者可掌握Python基础知识,并掌握机器学习与人工智能的基本概念,为进一步学习软件开发或数据科学知识奠定基础。

同时,本书对Jupyter系统本身进行全面、详细的讲述,是深入使用和配置、部署Jupyter的完全手册。

在本书中,我们提到的术语Jupyter,是指整个Jupyter交互式开发环境体系。而Jupyter Notebook则是指Jupyter交互式开发环境的Web界面,也指某一个具体的Notebook。而一个Notebook就是一个包含可执行代码、各种文本与公式以及可视化结果的文档。读者目前不必拘泥于这些概念与术语的区别及其关系,我们将在学习过程中不断明晰这些内容,并将在第6章进行详细辨析。

我们可以使用多种方式在Windows、macOS或Linux上安装Jupyter。为了让读者快速上手,本节我们将介绍通过安装Anaconda来完成Jupyter的安装。

在使用Anaconda安装Jupyter之前,我们有必要简单介绍一下Python、Anaconda、Jupyter之间的关系及其基本概念。

Python是当前非常流行的一种软件开发语言,广泛应用于各个领域。Python得以流行,当然有诸多原因。其中之一就是Python拥有数量庞大、功能完善的标准库和第三方库。Python对于不同的业务需求,都有对应的库可供引用,从而大大降低了各领域专业人员的开发工作量和开发工作的技术难度。

由于这些库十分纷繁芜杂,对这些库的管理和维护变得非常复杂。特别是对于非软件开发人员,他们往往会将大量时间消耗在对各种库和包的管理与排错中。

Anaconda则专注于对数量众多、版本及依赖关系繁杂的Python库的管理,是数据科学领域最实用的工具之一。Anaconda作为功能强大的Python及R语言的包管理器和环境管理器,有1500多个开源包。使用开源的Anaconda,是在Windows、macOS或Linux上展开基于Python及R语言的数据科学和机器学习工作最有效的方法之一。

而Jupyter则是包含在Anaconda中并默认安装的工具之一。通过安装Anaconda,不仅安装好了Jupyter,还为我们进行各种学习演练配置好了基本环境,大量的演练都可以直接上手。

请通过如下步骤,在Windows上安装Anaconda。下面这几个步骤,我们将用较简洁的方式完成Jupyter的安装。

(1)进入Anaconda官网中安装包下载页面。

(2)选择Python 3.7下的64-Bit Graphical Installer,开始下载Anaconda安装包,如图1-2所示。

图1-2

(3)安装包下载完成后,双击安装包文件Anaconda3-2020.02-Windows-x86_64.exe,开始安装Anaconda,安装界面如图1-3所示。

图1-3

(4)安装过程中,在各步骤中可以使用默认设置,以便快捷地完成安装,过程如图1-4所示。

图1-4

 

提示

需要说明的是,作者一贯主张安装任何软件时都应该认真阅读安装过程中每一个界面的内容,充分了解和理解安装过程中的各个选项及其含义,并做出自己正确的选择。软件使用过程中出现的许多问题往往源于安装过程中的默认设置或随意选择。但对于初次接触者,不必拘泥于细节,建议以最快的方式得到直观结果。

 

(5)安装完成后,在开始菜单中即可看到Anaconda相关的应用,包括Anaconda NavigatorAnaconda PromptJupyter NotebookSpyder等,如图1-5所示。

图1-5

通过上述步骤,我们完成了Anaconda个人版的默认安装,并安装好了Jupyter环境。在1.3节中我们将使用安装好的Jupyter学习其基本操作。

本节我们将通过简单的案例操作,使读者初步熟悉Jupyter Notebook。请通过如下步骤了解Jupyter Notebook的使用方法。

(1)在Windows的开始菜单中,单击Jupyter Notebook (Anaconda3),打开Jupyter Notebook。

(2)此时会弹出一个命令提示符窗口,用以启动Jupyter Notebook,如图1-6所示。请在使用Jupyter Notebook的过程中不要关闭此窗口。

(3)弹出命令提示符窗口后,系统会自动使用默认浏览器打开Jupyter主页,如图1-7所示。

图1-6

图1-7

 

提示

Jupyter主页(即Jupyter Notebook仪表板)文件列表中显示的内容,是用户配置文件默认路径下的文件夹和文件。

如果希望改变工作路径,例如想让测试代码都放在D:\Python下,则可依次单击开始菜单Anaconda3(64-bit)Anaconda Prompt(Anaconda3)打开Anaconda Prompt命令提示符窗口,启动Jupyter Notebook。在命令行中输入指定的路径,如“CD D:\Python”,将当前目录变更到你期望的位置。然后输入Jupyter Notebook,此时打开的Jupyter Notebook的当前工作路径,即你所期望的位置。

细心的读者可能会注意到,Jupyter Notebook仪表板的统一资源定位符(Uniform Resource Locator,URL)为http://localhost:8888/tree。这表示启动Jupyter Notebook时,实际上是启动了一个本地的后端服务。所以,Jupyter是一个完整的体系,后端是本地Jupyter服务,前端则是浏览器界面的Jupyter Notebook。而此前打开的命令提示符窗口运行的正是这个后台服务,所以不能关闭。

 

(4)单击NewPython 3,创建一个新的Notebook,如图1-8所示。

图1-8

(5)此时浏览器会打开一个新的Notebook页面,如图1-9所示。这就是你的第一个Jupyter Notebook。

图1-9

对于Jupyter Notebook页面中各部分的含义与功能后文会进行讲述,本节先通过简单操作使读者熟悉其基本功能。

Notebook中基本的组成单位是单元格(Cell)。单元格是Notebook中输入文本或代码的容器。图1-9中的页面,Jupyter以绿色框单元格表示当前正在编辑的单元格。

 

提示

单元格有以下两种主要类型。

(1)Code类型,即单元格中包含的是可被内核(kernel)引擎执行的程序代码。代码的输出将显示在本单元格下方。

(2)Markdown类型,即单元格中包含的是Markdown格式的文本内容。该单元格运行时,会在当前位置显示经格式化渲染后的内容。我们可以通过单击工具栏中的Code下拉列表框改变单元格类型。

 

(6)在图1-10所示的Notebook页面的单元格中,输入一行Python代码:print ('Hello World!'),然后单击工具栏中的运行按钮Run,即可看到其执行效果。

图1-10

 

提示

Python语言是大小写敏感的。没有接触过Python的读者,要注意print的大小写,还要注意括号、单引号、双引号等应是半角字符。

 

可以看到输出结果Hello World!显示在该单元格下方,同时在其下方出现一个新的单元格。

这就是你的第一个Python程序,向你的新世界问好!

下面我们再练习编写几行代码,体验使用Jupyter Notebook进行Python编程的高效、快捷。

(7)在Notebook新的单元格中,输入如下代码:

1  import numpy as np
2  import matplotlib.pyplot as plt
3  x = np.arange(-10,10,0.1)
4  y = x**2
5  plt.plot(x,y)

(8)运行代码,我们画出了抛物线的图形,如图1-11所示。

图1-11

(9)我们再增加两行代码,如图1-12所示,画出“微笑曲线”。

图1-12

本节示例代码参见本书配套源代码中的SmilingCurve.ipynb文档。

通过上面的演练,我们对Jupyter Notebook有了初步了解。在第2章中我们将详细介绍Jupyter Notebook的各项功能及操作。


相关图书

高级算法和数据结构
高级算法和数据结构
数据素养
数据素养
数据湖仓
数据湖仓
云数据中心网络架构与技术(第2版)
云数据中心网络架构与技术(第2版)
数亦有道 Python数据科学指南
数亦有道 Python数据科学指南
Jupyter数据科学实战
Jupyter数据科学实战

相关文章

相关课程