Jupyter Notebook

今天我们来入门Jupyter notebook这个东西,研究一下它的功能
目录:
一、简介
二、安装与运行
三、Python3的notebook的功能

一、简介

Jupyter Notebook是一个开源的Web应用程序,允许用户创建和共享包含代码、方程式、可视化和文本的文档。它的用途包括:数据清理和转换、数值模拟、统计建模、数据可视化、机器学习等等。它具有以下优势:

可选择语言:支持超过40种编程语言,包括Python、R、Julia、Scala等。
分享笔记本:可以使用电子邮件、Dropbox、GitHub和Jupyter Notebook Viewer与他人共享。
交互式输出:代码可以生成丰富的交互式输出,包括HTML、图像、视频、LaTeX等等。
大数据整合:通过Python、R、Scala编程语言使用Apache Spark等大数据框架工具。支持使用pandas、scikit-learn、ggplot2、TensorFlow来探索同一份数据。

二、安装与运行

虽然Jupyter可以运行多种编程语言,但Python是安装Jupyter Noterbook的必备条件(Python2.7,或Python3.3以上)。可以直接使用Anaconda安装,在安装完Anaconda后默认安装好Jupyter Noterbook。关于安装的全部信息可以在官网读到:安装Jupyter。

2.1使用Anaconda安装

官网下载
对于小白,强烈建议使用Anaconda发行版安装Python和Jupyter,其中包括Python、Jupyter Notebook和其他常用的科学计算和数据科学软件包。

首先,下载Anaconda。建议下载Anaconda的最新Python 3版本。其次,请按照下载页面上的说明安装下载的Anaconda版本。比如下图,Windows系统可以选择Python3.7下面的64位的安装包。


具体安装详情参考简书

2.2配置Jupyter Notebook

首先jupyter默认的工作空间目录是很那找的,因此需要更改成自己的Python工作空间。操作如下:
首先我们可以在开始菜单找到anaconda文件夹打开里面的Anaconda Prompt,

输入 jupyter notebook --generate-config


找到所示路径的文件,将 #c.NotebookApp.notebook_dir = ''更改为
c.NotebookApp.notebook_dir = 'E:\Py\jupyter'后面的路径可以更改为自己的工作空间

接下来右击jupyter Notebook点击属性,吧后面的“%USERPROFILE”删掉,并把下面的初始位置中的内容改为上面设置的工作路径

改完后为下图

如有新建环境可以先安装jupyter模块

以后操作跟上述一样即可。

这样就可以在工作空间放置项目文件,方便访问运行。

具体配置详情参考博客

2.3运行Jupyter Notebook

成功安装Jupyter Notebook后,在开始菜单找到jupyter notebook就可打开Jupyter Notebook,不同环境可以打开不同的jupyter。

下面演示一下在Windows系统中打开Jupyter Notebook:

还有很多方法,比如win+R打开cmd输入jupyter notebook也可以直接打开。打开后浏览器地址显示http://localhost:8889/tree#notebooks,所以直接在浏览器输入这个地址也能打开
参阅运行Notebook了解更多详情。

3、python3文件常用功能

在主页面点击“New”选项中的 "Python 3" 选项。可以新建一个notebook。

然后,可以导入最常见的 Python 库——pandas 和 numpy——来开始你的项目。代码上方的菜单栏提供了操作单元格的各种选项:save(保存),insert (添加),edit (编辑),cut (剪切),move cell up/down (上下移动单元格),run cells(在单元格中运行代码),interupt (停止代码),save (保存工作),以及 restart (重新启动内核)。

PS:
(1)按tab键查看提示信息或者补全命令
(2)使用分号可以阻止该行函数的结果输出

  • 在下拉菜单中(如上所示),你有四个选项:

  • Code - 这是你输入代码的地方

  • Markdown - 这是你输入文本的地方。你可以在运行代码后添加结论,添加注释等。

  • Raw NBConvert - 这是一个命令行工具,可将你的笔记本转换为另一种格式(如 HTML)

  • Heading - 你可以将标题添加到单独的小节并使你的 Notebook 看起来干净整洁。这个选项现在已经集成到 Markdown 选项中。添加一个“##”,以确保在你之后输入的内容将被视为标题

使用 Magic Functions

开发人员已经插入了预定义的 magic functions,使你的工作更方便和更具交互性。你可以运行以下命令来查看这些函数的列表(注意:通常不需要输入“%”,因为通常 Automagic 是默认打开的):

%lsmagic

你会看到许多选项,你甚至可能认识其中的 %clear, %autosave, %debug 和 %mkdir 等函数。magic command 有两种运行方式:逐行运行( Line-wise )逐块运行( Cell-wise )

顾名思义, Line-wise 是当你想要执行一个单行命令的时候使用,而 Cell-wise 是你想要执行的命令不仅仅是一行,而是整个单元格中的整个代码块时使用。
在逐行运行模式中,所有给定的命令都必须以 % 字符开始,而在逐块运行模式下,所有命令都必须以 %% 开头。让我们看看下面的例子来更好的理解:

逐行模式:

%time a = range(10)

逐块模式:

%%timeit a = range (10)
min(a) 

执行效果如下图所示:


键盘快捷键——节省时间并提高效率!

快捷键是 Jupyter Notebooks 最好用的功能之一。当想运行任何代码块时,只需要按下Ctrl + Enter 即可。Jupyter Notebooks 提供的键盘快捷键非常多,为我们节省了大量时间。

以下是挑选的一些快捷键,在开始使用 Notebooks 时会经常用到这些快捷键。

Jupyter Notebook 提供了两种不同的键盘输入模式 - 命令和编辑。命令模式将键盘与 Notebook 命令绑定,并由具有蓝色左边距的带有灰色单元格边框来表示。编辑模式允许你将文本(或代码)输入活动单元格,并以绿色单元格边框表示。

使用 Esc 和 Enter 在命令和编辑模式之间跳转。现在就试试吧!

一旦进入命令模式(即没有活动单元格),就可以尝试以下快捷键:

  • A 键将在选中单元格上方插入新单元格,B 键将在选中单元格下方插入一个单元格

  • 要删除单元格,请连续按两次 D 键

  • 要撤消已删除的单元格,请按 Z 键

  • Y 键将当前的选中单元格变成代码单元格

  • 按住 Shift + 向上或向下箭头键可以选择多个单元格。在多选模式下,按 Shift + M 会合并选中的单元格

  • F 键会弹出 “查找和替换” 菜单

处于编辑模式时(在命令模式下按 Enter 键进入编辑模式),你会发现以下快捷键非常好用:

  • Ctrl + Home 转到单元格的开头

  • Ctrl + S 会保存工作

  • 和上面提过的一样,Ctrl + Enter 将运行整个单元格

  • Alt + Enter 不仅会运行单元格,它还会在下方添加一个新的单元格

  • Ctrl + Shift + F 打开命令选项板

要查看整个键盘快捷键列表,请在命令模式下按 H 或转到 Help 菜单栏下的 Keyboard shortcuts。请经常检查这些内容,因为经常会有新的快捷键被加进来。

保存和共享 Notebook

这是 Jupyter Notebook 中最重要和最棒的功能之一。当我需要写博客文章,但我的代码和注释都保存在 Jupyter 文件中时,我需要先将它们转换为另一种格式。请记住,这些 Notebooks 采用 json 格式,在共享它时这并不是很有帮助。

进入 Files 菜单,可以看到一个 Download As 选项:

在这里可以将 Notebook 保存为 7 个选项中的任何一个。最常用的是 .ipynb 文件,这样其他人就可以在自己的机器上复制代码;或者保存为 .html 文件, 这样会打开一个网页(当想要保存嵌入在 Notebook 中的图像时,这会派上用场)。

Matplotlib集成

Matplotlib是用来画图的Python库。与Jupyter notebook结合使用时,效果更好。

为了在Jupyter notebook中使用matplotlib,需要告诉Jupyter获取所有matplotlib生成的图形,并把它们全部嵌入到notebook中。为此,只需输入以下命令:

%matplotlib inline

这条语句执行可能耗费几秒钟,但是只需要打开notebook时执行一次就好。让我们作个图,看看是怎么集成的:

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(20)
y = x**2

plt.plot(x, y)

这段简单代码将绘出y=x2对应的二次曲线。运行这个cell,结果如下所示:

One More Thing

非本地内核

Jupyter notebook非常容易从本地电脑上启动,也允许多个人通过网络连接到同一个Jupyter实例。因此我们可以注意到,在cmd里运行jupyter中,启动Jupyter时出现了下面这条语句:

IPython Notebook运行在:http://localhost:8888/

这条语句表示notebook是本地运行,可以在浏览器中输入地址http://localhost:8888/,打开notebook。通过修改配置,可以让notebook面向公开访问。这样,任何人如果知道这个notebook地址,就通过浏览器可以远程访问并修改notebook。

实战部分

在这里我使用1个例子来操作一下吧

首先新建一个python3环境的文件
新建文件

跳转到新建页面后先重命名,点击页首的名字后更改即可,如下图
改名

选择markdown,先写个文件介绍
选择markdown

在第1个单元写介绍



执行可以点击“run按钮”,也可以快捷键shift+enter直接执行单模块,执行效果如图所示:

接下来就可以写代码了。
当需要输入变量时,可以按tab键获得提示并快速输入
代码提醒

代码可以分块写,比如每个函数使用1个单元来存放。
整体代码

最后执行结果


执行结果

总结

Jupyter notebook是一个非常强大的工具,允许使用者为数据分析、教育、文件等任何可以想到的内容创建漂亮的交互式文档。

参考博客链接https://blog.csdn.net/csdn_zhishui/article/details/81431364
参考博客链接https://blog.csdn.net/guleileo/article/details/80490921
参考博客链接https://www.cnblogs.com/giserliu/p/4997144.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,185评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,445评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,684评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,564评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,681评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,874评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,025评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,761评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,217评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,545评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,694评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,351评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,988评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,778评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,007评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,427评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,580评论 2 349

推荐阅读更多精彩内容