给初学者的 Jupyter Notebook 教程
Jupyter Notebook 是一个非常强大的工具,常用于交互式地开发和展示数据科学项目。它将代码和它的输出集成到一个文档中,并且结合了可视的叙述性文本、数学方程和其他丰富的媒体。它直观的工作流促进了迭代和快速的开发,使得 notebook 在当代数据科学、分析和越来越多的科学研究中越来越受欢迎。最重要的是,作为开源项目的一部分,它们是完全免费的。
Jupyter 项目是早期 IPython Notebook 的继承者,它在 2010 年首次作为原型发布。尽管在 Jupyter Notebook 中可以使用许多不同的编程语言,但本文将重点介绍 Python,因为在 Jupyter Notebook 中 python 是最常见的。
为了充分理解本教程,你应该熟悉编程,特别是 Python 和 pandas(译者注:Pandas 是python的一个数据分析包)。也就是说,如果你有编程经验,这篇文章中的 Python 不会太陌生,而 pandas 也是容易理解的。Jupyter Notebooks 也可以作为一个灵活的平台来运行 pandas 甚至是 Python,这将在这篇文章中体现。
我们将会:
- 介绍一些安装 Jupyter 和创建你的第一个 notebook 的基本知识。
- 深入钻研,学习所有重要的术语。
- 探索笔记是如何轻松地在网上共享和发布。事实上,这篇文章就是一个 Jupyter notebook!这里的一切都是在 Jupyter notebook 环境中编写的,而你正在以只读的形式查看它。
Jupyter Notebook 数据分析实例
我们将通过一个样本分析,来回答一个真实的问题,这样你就可以看到一个 notebook 的工作流是如何使任务直观地完成的,当我们分享给其他人时也可以让其他人更好地理解。
假设你是一名数据分析师,你的任务是弄清楚美国最大公司的利润变化历史。你会发现自从 1955 年第一次发表这个名单以来,已有超过 50 年的财富 500 强企业的数据集,这些数据都是从《财富》的公共档案中收集来的。我们已经创建了一个可用数据的 CSV 文件(你可以在这里获取它)。
正如我们将要演示的,Jupyter Notebooks 非常适合这项调查。首先,让我们安装 Jupyter。
安装
初学者开始使用 Jupyter Notebooks 的最简单方法是安装 Anaconda。Anaconda 是最广泛使用的用于数据科学的 Python 发行版,并且预装了所有常用的库和工具。除了 Jupyter 之外,Anaconda 中还封装了一些 Python 库,包括 NumPy,pandas 和 Matplotlib,并且这完整的1000+列表是详尽的。这使你可以在自己完备的数据科学研讨会中运行,而不需要管理无数的安装包或担心依赖项和特定操作系统的安装问题。
安装 Anaconda:
- 下载支持 Python 3 (就不用 Python 2.7 了)的最新版本 Anaconda。
- 按照下载页面或可执行文件中的说明安装 Anaconda。
如果你是已经安装了 Python 的更高级的用户,并且更喜欢手动管理你的软件包,那么你可以使用pip:
pip3 install jupyter
复制代码
创建你的第一个 Notebook
在本节中,我们将看到如何运行和保存 notebooks,熟悉它们的结构,并理解接口。我们将会熟悉一些核心术语,这些术语将引导你对如何使用 Jupyter notebooks 进行实际的理解,并为下一节做铺垫,该部分将通过示例数据分析,并将我们在这里学到的所有东西带到生活中。
运行 Jupyter
在 Windows 上,你可以通过将 Anaconda 快捷方式添加到你的开始菜单来运行 Jupyter,它将在你的默认网页浏览器中打开一个新的标签,看起来就像下面的截图一样。
这是 Notebook Dashboard,专门用于管理 Jupyter Notebooks。把它看作是探索,编辑和创建 notebooks 的启动面板。你可以把它看作是探索、编辑和创造你的 notebook 的发射台。
请注意,仪表板将只允许您访问 Jupyter 启动目录中包含的文件和子文件夹;但是,启动目录是可以更改的。还可以通过输入 jupyter notebook
命令在任何系统上启动指示板(或在Unix系统上的终端);在这种情况下,当前工作目录将是启动目录。
聪明的读者可能已经注意到,仪表板的 URL 类似于 http://localhost:8888/tree
。Localhost 不是一个网站,而是表示从你的本地机器(你自己的计算机)中服务的内容。Jupyter notebook 和仪表板都是 web 应用程序,Jupyter 启动了一个本地的 Python 服务器,将这些应用程序提供给你的 web 浏览器,使其从根本上独立于平台,并打开了更容易在 web 上共享的大门。
仪表板的界面大部分是不言自明的 —— 尽管我们稍后会简要介绍它。我们还在等什么?浏览到你想要创建你的第一个 notebook 的文件夹,点击右上角的 New
下拉按钮,选择 Python 3
(或者你喜欢的版本)。
我们马上能看到成果了!你的第一个 Jupyter Notebook 将在新标签页打开 - 每个 notebook 使用它自己的标签,因为你可以同时打开多个 notebook。如果您切换回仪表板,您将看到新文件 Untitled
。你应该看到一些绿色的文字告诉 notebook 正在运行。
什么是 ipynb 文件?
理解这个文件到底是什么是很有用的。每一个 .ipynb
文件是一个文本文件,它以一种名为 JSON 的格式描述你的 notebook 的内容。每个单元格及其内容,包括已被转换成文本字符串的图像附件,都与一些元数据一起列出。你可以自己编辑这个 -- 如果你知道你在做什么! -- 通过在 notebook 的菜单栏中选择 "Edit > Edit Notebook Metadata"。
你还可以通过在仪表板上的控件中选择 Edit
来查看你的 notebook 文件的内容,但是重要的是可以;除了好奇之外没有理由这样做,除非你真的知道你在做什么。
notebook 的接口
既然你面前有一个打开的 notebook,它的界面就不会看起来完全陌生;毕竟,Jupyter 实际上只是一个高级的文字处理器。为什么不看一看?查看菜单以了解它,尤其是花点时间浏览命令选项板(这是带键盘图标的小按钮(或 Ctrl + Shift + P
))下滚动命令列表。