anaconda3 jupyternotebook_jupyter notebook入门详解

notebook 是 Jupyter项目的重要组件之一,它是一个代码、文本(有标记或无标记)、数据可视化或其它输出的交互式文档。Jupyter Notebook 需要与内核互动,内核是 Jupyter 与其它编程语言的交互编程 协议。Python 的 Jupyter 内核是使用 IPython。Jupyter Notebook 是基于网页的用于交互计算的应用程序。其可被应用于全过程计算:开发、文档编写、运行代码和展示结果。,除此之外,它还提供了一系列魔法操作,今天的文章着重讲解关于 Jupyter notebook 的魔法操作。

一、安装与启动

1、安装

要使用 Jupyter,首先得安装 Jupyter notebook 安装 Jupyter Notebook 有两种方式:

  • 直接使用命令安装
pip3 install jupyter
  • 使用 Anaconda 安装
conda install jupyter notebook

2、启动

启动程序也很简单,直接在终端输入 Jupyter notebook。

「快捷键:win+R」

jupyter notebook

ec2aa5d0c9861077b60064b5ce4e3e35.png

如果是anaconda的话,可以直接在「Anaconda3文件夹」下面直接点击「jupyuter notebook」即可打开:

ce0fd7abae7799a674a632214fb13127.png

如果出现这个画面,代表打开成功,将会直接跳转到浏览器上:

75b0cc5e5c29dffd7950837072f1fd05.png

打开的界面是这样的:

5e7ad758c6168e9afb768eba180351c0.png

这时候还需要自己新建文件夹或者文件,然后打开相应的ipynb文件,如下图所示:

b11436a9fb5cd2b3efc051d5d41aa19e.png

二、使用指南

1、Jupyter 帮助文档

对于 Jupyter notebook 的使用可以在命令行短使用 jupyter notebook -h 或者 jupyter notebook --help 即可查看相关使用命令,终端输入 jupyter notebook -h 后显示如下:

853cccd0bc00e13096179a7b0400ad54.png

2、操作页面介绍

c5cce160ed996d0fc9c7b1e0c34773b5.png

5fdd236097f327b1e15eecd78f49afa5.png

要新建一个 notebook,点击按钮 「New」,选择 「Python3」。后进入到操作页面,在操作页面中输一行 Python 代码后按快捷键 「Shift-Enter」 执行。如下图所示:

3607d6a5c06c24ad0b01cf9d0ef79f3f.png

在 Jupyter notebook 中,最重要的是对文件中的 cell 或者 cells 进行操作,Cell 菜单主要包含了运行cells、运行cells后并在之后插入新的cell、运行所有cells、运行当前之上的所有cell、运行当前之下的所有cell、改变cell类型(code、markdown、raw nbconvert)等,cell 操作菜单栏如下:

b1d06258315cfcf9fd323c23f08d4f95.png
  • 菜单栏详细介绍:

「File」

File 菜单中主要包含了以下功能:创建新的 Notebook、打开新的界面、拷贝当前 Notebook、重命名 Notebook、保存还原点、恢复到指定还原点、查看 Notebook 预览、下载 Notebook 、关闭 Notebook。

这里重点强调下下载 Notebook 选项,它可以将当前 Notebook 转为py文件、html文件、markdown 文件、rest 文件、latex 文件、pdf 文件。

3e2c6accd2e73c0e4220fbdfa19dfa59.png

「Edit」

Edit 菜单主要是对 Cells 剪切、复制、删除、向上/向下移动等。

8b33bebcdd182ed4b270198f428c3d0d.png

「Insert」

插入 Cell,插入方式有两种:一种是在当前 cell 上方插入,一种是在当前 cell 下方插入。

「Cell」

Cell 菜单主要包含了运行 cells、运行cells后并在之后插入新的 cell、运行所有 cells、运行当前之上的所有 cell、运行当前之下的所有cell、改变cell类型(code、markdown、raw nbconvert)等.

「Kernel」

Kernel 菜单主要包含了中断 kernel、重启 kernel、重启 kernel 并清除输出、重启 kernel 并运行所有 cell、重连 kernel、关闭 kernel、改变 kernel 类型等。

「Help」

Help 菜单主要包含了用户交互引导、键盘快捷键、修改键盘快捷键、Notebook 帮助、Markdown 帮助、Jupyter-notebook-extensions 帮助、Python 帮助、IPython 帮助、Numpy 帮助、Scipy 帮助、Matplotlib 帮助、Sympy 帮助、pandas 帮助等

9e9360bb9d1200912a2bea1e34843760.png

同样的 Jupyter notebook 也能写 Markdown 语法,在如图位置选择标题后按照 Markdown 语法书写即可,例如:

b3d13402e8466ea52a6da3cac869ce0b.png

3、魔法命令

IPython 中特殊的命令(在 Python 中没有)被称作“魔术”命令。这些命令可以使普通任务更便捷,更容易 控制 IPython 系统。魔法命令是 magic 函数主要包含两大类:

  • 一类是行魔法前缀为 %
  • 一类是单元魔法前缀为 %%;

使用%lsmagic命令查看所有魔法命令:

%lsmagic

3411b9113f2620118deff3e94302a113.png

「部分魔法命令详解」

4986c7c9356567d3042eee4f1dbc1b16.png

「%run」

%run 表示在 Jupyter notebook 中运行指定的 .py 文件,例如:创建一个新的 test .py 文件 输入内容后保存,输入内容:

import numpy as np
import pandas as pd
# 创建一个多维数组
data=pd.DataFrame(np.arange(20).reshape(4,5),index=list('abcd'),columns=list('ABCDE'))
print(data)

使用 %run test .py 运行结果如下:

243a4d4a53944b359fedc2e83d2fe76b.png

「%命令?」

%命令? 用来显示命令的用法,例如:

%timeit?

6dc5c5a04e1d98271649d627045700a8.png

「%timeit 和 %%timeit」

  • %timeit 命令用来帮助测试系统性能:
strings = ['foo', 'bazzle', 'quxix', 'python'] * 100
%timeit [x for x in strings if x[:3] == 'foo']

39482d1d94bf5cd509e3cb66b272fb63.png
  • %%time 将会给出cell的代码运行一次所花费的时间,例如:
%%time
data=pd.DataFrame(np.arange(20).reshape(4,5),index=list('abcd'),columns=list('ABCDE'))
data

ebc386ff45a0ce3a9dcf2d3fb8f8921f.png

「%matplotlib」

%matplotlib 表示集成绘图工具 Matplotlib,在IPython shell中,运⾏ %matplotlib 可以进⾏设置,可以创建多个绘图窗口,而不会干扰控制台 session:

450d302bff310e36709fc182fc5b522f.png

在这里还用到另一个命令:%matplotlib inline ,它表示将 Matplotlib 内嵌到 Jupyter notebook 中,使用方法如下:

import numpy as np
%matplotlib inline
import matplotlib.pyplot as plt
plt.plot(np.random.randn(60).cumsum())

f6588de649279fb5c0090be84bbe8ded.png

三、插件简介与安装

Jupyter Notebook 是一个很棒的教学、探索和编程环境,但其功能不足也是出了名的。幸好,有许多方法可以改进这个不错的工具,如 Jupyter Notebook 扩展工具。

1、安装

  • pip安装
pip install jupyter_contrib_nbextensions && jupyter contrib nbextension install
  • anaconda安装
conda install -c conda-forge jupyter_contrib_nbextensions

启动 Jupyter Notebook,并导航至新的 Nbextensions 选项卡:

f6588de649279fb5c0090be84bbe8ded.png

选择你想要的扩展功能,享受它带来的优势。如果你没看到扩展选项,打开 notebook,单击edit,然后点nbextensions config。在 notebook 的工具栏里可以看到扩展插件:

928f7aca95d0e5fa3db419851c5626cc.png

2、notebook 扩展插件简介

Jupyter Notebook 扩展插件是扩展 notebook 环境基本功能的简单插件。它们用 JavaScript 语言编写,会自动套用代码格式或者在单元格完成后发送浏览器通知。扩展插件目前仅支持 Jupyter Notebook(不支持 Jupyter Lab)。

为什么要使用扩展插件?Jupyter Notebook 是一个很好用的工具,可用于教学、学习、原型设计、探索和尝试新方法(甚至可用于 Netflix 的生产过程中)。但是,原版 notebook 功能有限,有时令人挫败。虽然 Jupyter Notebook 扩展插件没有完全解决这个问题,但它们确实能让你的工作变得更轻松。

该用哪些扩展插件?

以下是我最常用的五种 Jupyter Notebook 扩展插件:

「Table of Contents:易导航」

如果你在一个 Jupyter Notebook 中同时开启了十几个单元格,那你想跟踪所有单元格就会有些困难。Table of Contents 通过添加 TOC 链接解决了这个问题,通过 TOC 链接你可以定位到页面中的任何位置。

ce0efc53b03058848e71ebb3593d2742.png

「Autopep8:获得简洁代码」

我们都应该编写符合 pep8 标准的代码,但有时你会陷入分析,难以坚持这种标准。所以当你写完代码后,只要单击这个选项,就可以让代码变得简洁漂亮。

fbdfccd1976d58082eabbf2cb69c776a.gif

这个插件可以称得上是最好的插件了,仅需点击一下,就能完成一项耗时又乏味的工作,让你专注于思考。

「variable inspector:跟踪工作空间」

variable inspector 会显示你在 notebook 中创建的所有变量的名称,以及它们的类型、大小、形状和值。

308660d7c3074c69e69bd9f44d3a952e.png

这个工具对于从 RStudio 迁移过来的数据科学家来说是无价之宝。如果你不想继续打印 df.shape 或无法重新调用 x 的 type,这个工具对你来说也同样重要。

「ExecuteTime:显示运行时间」

我经常不知道某个单元格需要运行多久或者最后一次运行一个打开好几天的 notebook 是什么时候。ExecuteTime 完美解决这个问题,它会显示单元格的运行完成时间和所耗时长。

108e0f0e5013bc1677ee67c2c92a8027.png

的确有更好的计时方法,如 %%timeit,但 ExecuteTime 易于实现,且可以覆盖 notebook 中的所有单元格。

「隐藏代码输入:隐藏过程,展示结果」

虽然有些人喜欢看到某项艰苦工作的具体分析,但有些人却只想看到结果。隐藏所有输入的插件让你能够立即隐藏 notebook 中的所有代码,只保留结果。

8311be1f986de70ffc368dff3dd752a6.gif

下一次如果有人说他们只想看结果,你只要单击一下就可以了。(不过你还是得经常检查代码。)

以上是我最常用的五种扩展插件,你还可以尝试其他扩展插件。先安装扩展插件,然后打开 notebook 探索吧!

3、总结

安装 Jupyter Notebook 扩展插件,花点时间弄清楚哪些有用,然后提高自己的工作效率。虽然这些功能不至于改变你的人生,但它们带来的益处也是值得的。而且累积起来为你节约了很多宝贵的开发时间。

如果你正在写生产代码,你可能会更愿意花些时间学习 IDE(我喜欢 VS Code),但 Jupyter Notebook 仍然是数据科学工作流程中不可或缺的一部分。如果你要使用这个环境,就最好把它用到极致,以从中获得最大的收益。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值