Jupyter Notebook使用
不论你是刚开始学 Python,还是正在啃数据分析的骨头,对你来说,不断在各种命令行窗口和编辑器里切来切去,或者不断打开各种窗口查看 matplotlib 的输出之类的繁琐操作,一定是家常便饭了。哎呀,这都 8102 年了,除了又大又笨重的 IDE,难道就没有什么简单而直观的办法,让我们这些新手能管理和运行代码吗?
当然有啊,还是免费的咧!
这款神器就叫 Jupyter Notebook,它一定能拯救你于水深火热之中!
Jupyter Notebook 是一款 Web 应用,它能让用户将上面说的各种窗口里的东西,全部组合到一个可读性好,易于共享,且对新手友好的文档中。这个文档里可以包括:
● live code (e.g. Python code)
可执行的代码,比如我们需要的 Python 代码
● visualizations
可视化的数据库图表,或者代码执行之后生成的可视化效果,比如 matplotlib 输出的图像等
● explanatory text (written in markdown syntax)
各种解释性文字,例如用 markdown 语法写的格式化说明文本,Latex写的数学方程等
因此,你可以方便地一边写代码,一边写许多带格式的注释文本,还能让运行结果实时在页面内显示出来。所以,Jupyter Notebook 很适合以下一些用途使用:
● 学习并尝试运行 Python 代码,观察其效果
● 数据处理和转换
● 数值模拟分析
● 统计建模
.
Jupyter Notebook 是一个 Web 应用程序,便于创建和共享文学化程序文档,支持实时代码、数学方程、可视化和 Markdown,其用途包括数据清理和转换、数值模拟、统计建模、机器学习等等。目前,数据挖掘领域中最热门的比赛 Kaggle 里的资料都是 Jupyter 格式。对于机器学习新手来说,学会使用 Jupyter Notebook 非常重要.
要运行 Jupyter Notebooks,只需输入以下命令就可开始使用!
jupyter notebook
执行上面命令之后, Jupyter Notebook 将在你的默认浏览器中打开,网址为:http://localhost:8888/tree
在某些情况下,它可能无法自动打开。这种情况下,你的终端或者命令提示符中将会生成一个带有令牌密钥( token key )的网址。要打开 Notebook,你需要将整个 URL(包括令牌密钥)复制粘贴到浏览器中。
Notebook 打开后,你会在顶部看到三个选项卡:Files(文件),Running(运行)和 Clusters(集群)。Files 基本上列出了所有的文件,Running 显示你当前已经打开的终端和Notebooks,Clusters 由 IPython parallel 包提供,用于并行计算。
修改Jupyter的默认目录:
jupyter notebook --generate-config
打开 jupyter_notebook_config.py 修改配置 c.NotebookApp.notebook_dir为自己的工作目录
c.NotebookApp.notebook_dir = 'E:/jupyter/'
找到Jupyter Notebook,右键该快捷方式,选择属性进行快捷方式的设置,修改快捷方式的“目标(T)”,把目标框里面末尾的%USERPROFILE%去掉,删除到.py后面就行,别删多了。如下图:

不删这一句的话,jupter会使用user profile(用户用户预置文件,即默认目录),之后无论你怎么改配置文件都不管用。所以,谨记!
(%USERPROFILE%这个路径比较特别,它不是一个普通的文件夹,而是用户配置文件的根目录,用户的所有特定数据,包括文件和注册表信息都保存在这里。)
▌键盘快捷键——节省时间并提高效率!
快捷键是 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。请经常检查这些内容,因为经常会有新的快捷键被加进来。
我们还可以把单元格的类型从“代码(Code)”改成“文本(Markdown)”,这样你可以方便地用 markdown 语法写出带格式的注释或说明文本,方便你整理归纳代码,或是在数据分析时描述需要处理的数据信息等。
改了单元格类型之后,你会发现前面的 In [ ]: 标记不见了。你在这个单元格中输入 markdown 标记时,会自动解析成不同大小,不同格式的文字标记.
如果你点击一个单元格的周边空白处或是输出部分,你选中的这个单元格就进入了命令模式,左边的指示条是蓝色:
如果你点击代码区域,则单元格就进入编辑模式,光标将在你点击的位置闪烁,而左边的指示条也变成绿色,表示你正在编辑代码内容:
在编辑时,你可以按 ESC 键退出编辑模式,回到命令模式。
这两种模式的区别在于,在编辑模式下,代码编辑框接收你所有的键盘输入,让你对代码/文本进行编辑。而在命令模式下,Jupyter Notebook 页面能响应你的各种键盘快捷命令。
Jupyter Notebook 还有一个很酷的功能:记录点。你可以为当前的 notebook 文件创建一个记录点,保存当前文件的所有状态。创建记录点之后,你可以随时返回到当前的状态,撤销这期间做出的任何修改。
要创建一个新的记录点,你只需要在菜单栏上选择 File(文件)-> Save and Checkpoint(保存记录点)即可。点完之后,你就会在标题旁看到 Checkpoint 保存的提示:
如果你想要返回到之前的 Checkpoint,你只需要在菜单栏上选择 File(文件)-> Revert to Checkpoint(返回到记录点),并点击对应的记录点的时间戳即可。
Cell的四种功能
Cell有四种功能:Code、Markdown、Raw NBConvert、Heading,这四种功能可以互相切换。Code用于写代码,Markdown用于文本编辑,Raw NBConvert中的文字或代码等都不会被运行,Heading是用于设置标题的,这个功能已经包含在Markdown中了。四种功能的切换可以使用快捷键或者工具条。
Code用于写代码,三类提示符及含义如下:
| 提示符 | 含义 |
|---|---|
| In[ ] | 程序未运行 |
| In[num] | 程序运行后 |
| In[*] | 程序正在运行 |
Markdown用于编辑文本,给出常用的Markdown用法:

其他非常用的用法需要时可以再查阅。
其他
(1)按tab键查看提示信息或者补全命令

(2)在一个库、方法或变量前加上 ?,就可以获得它的一个快速语法说明

(3)使用分号可以阻止该行函数的结果输出

Jupyter清理所有单元格输出
4.2.5 Cell

| 选项 | 功能 |
|---|---|
| Run Cells | 运行单元内代码 |
| Run Cells and Select Below | 运行单元内代码并将光标移动到下一单元 |
| Run Cells and Insert Below | 运行单元内代码并在下方新建一单元 |
| Run All | 运行所有单元内的代码 |
| Run All Above | 运行该单元(不含)上方所有单元内的代码 |
| Run All Below | 运行该单元(含)下方所有单元内的代码 |
| Cell Type | 选择单元内容的性质 |
| Current Outputs | 对当前单元的输出结果进行隐藏/显示/滚动/清除 |
| All Output | 对所有单元的输出结果进行隐藏/显示/滚动/清除 |
%matplotlib inline
这是 IPython 中定义的魔法函数(Magic Function),其意义是将那些用于
matplotlib绘制的图显示在页面里而不是弹出一个窗口,因此就不需要plt.show()这一语句来显示图片,如下图所示:
因为这是 IPython 中的命令函数,因此只能在 jupyter notebook中使用,在其他地方使用或者直接运行会报错
************************************************************************************************************
IPthon 提供了功能强大,内建的Magic函数,定义为:IPython中将任何第一个字母为%的行视为 Magic Function的特殊调用,可以控制 IPython, 为其添加许多系统功能
https://www.jianshu.com/p/2dda5bb8ce7d
链接:
https://blog.csdn.net/guleileo/article/details/80490921
https://www.itcodemonkey.com/article/6025.html
https://blog.51cto.com/853056088/2162189
Jupyter Notebook使用的更多相关文章
- 远程访问jupyter notebook
远程访问Jupyter Notebook Jupyter Notebook很好用,但是直接远程在服务器上用体验当然不如本地计算机好,那么如何远程访问呢? 首先需要在服务器上安装好ipython, ju ...
- Python,Jupyter Notebook,IPython快速安装教程
0.安装环境 Windows10,Python3.5.1,IPython,jupyter notebook,and other functionality 官方安装文档Linux版3.x 官方安装文档 ...
- Jupyter Notebook 27绝技——27 Jupyter Notebook tips, tricks and shortcuts
转载自:https://www.dataquest.io/blog/jupyter-notebook-tips-tricks-shortcuts/ Jupyter notebook, formerly ...
- Jupyter notebook 配置目录
默认打开Jupyter notebook,工作目录是C:\Users\Username,这里面有很多其它与Jupyter notebook无关的文件,也很有用,不能看着烦就删掉,所以需要修改Jupyt ...
- 如何用Jupyter Notebook打开Spark
电脑已经装了anaconda python,然后下载了spark2.1.0.因为版本太新,所以网上和书上的一些内容已经不再适用.比如关于如何使用IPython和Jupyter,教程给出的方法是用如下语 ...
- jupyter notebook + pyspark 环境搭建
安装并启动jupyter 安装 Anaconda 后, 再安装 jupyter pip install jupyter 设置环境 ipython --ipython-dir= # override t ...
- Jupyter notebook 安装,初步使用
在学习算法,图像处理过程中,理论结合实际的时候总要写一些程序,我用的是PYTHON.这时候,选择一款称手的工具比较重要.之前我用自带的IDLE,也还可以,但是操作不够便捷,文件组织也不是很好.后来想用 ...
- pyspark 中启动 jupyter notebook
还是打算选择python学习spark编程 因为java写函数式比较复杂,scala学习曲线比较陡峭,而且sbt和eclipse和maven的结合实在是让人崩溃,经常找不到主类去执行 python以前 ...
- 详解 jupyter notebook 集成 spark 环境安装
来自: 代码大湿 代码大湿 1 相关介绍 jupyter notebook是一个Web应用程序,允许你创建和分享,包含活的代码,方程的文件,可视化和解释性文字.用途包括:数据的清洗和转换.数值模拟.统 ...
- Docker 安装jupyter notebook
1. 利用image运行一个container sudo docker run -it --net=host tingting --net=host:让container可以上网,安装原来的sudo ...
随机推荐
- vue项目里面使用脚手架实现跨域
今天在做vue项目的时候,项目在本地,接口数据在阿里云,这就造成了跨域,在网上找了好久,网上大部分的方法都是找到config文件夹下面的index进行修改的,可是我找到的Index却和他们描述的不一样 ...
- Java 程序员应在2019年学习的10条面向对象(OOP)设计原则
面向对象的设计原则 是 OOP 编程的核心,但是我看到大多数 Java 程序员都在追求诸如 Singleton 模式,Decorator 模式或 Observer 模式之类的设计模式,而对学习面向 ...
- [debug] 解决在C++编写过程中的“找到一个或多个多重定义的符号”
如下图: 其在 common.h 中定义了一个变量a ,然后在两个 cpp 文件中都是用它. 在这种情况下,链接时就会出现 “找到一个或多个多重定义的符号”. 解决方案: 在某个cpp文件中定义,然后 ...
- js键盘事件以及键盘事件拦截
一.键盘事件 onkeydown: 按下键盘时触发 onkeypress: 按下有值的键时触发 注意: onkeypress按下 Ctrl.Alt.Shift.Meta 这样无值的键,这个事件不会触发 ...
- java核心技术第二篇之数据库SQL语法
#查询products表记录SELECT * FROM products WHERE price > 2000;-- 单行注释/* 多行注释*/#创建数据库CREATE DATABASE hei ...
- 黑马程序员面试宝典(Java)Beta6.0免费下载
场景 JavaSE基础 面向对象特征以及理解 访问权限修饰符区别 理解clone对象 JavaSE语法 java有没有goto语句 &和&&的区别 如何跳出当前的多重嵌套循环? ...
- JavaWeb之servlet(1)
servlet servlet:就是一个Java程序,运行在web服务器中,用于接收和响应客户端的http请求.更多是配合动态资源使用.当然静态资源也要使用servlet,只不过Tomcat里面已经定 ...
- 01初识 JavaScript
1.初识 JavaScript 1.1 JavaScript 是什么 l JavaScript 是世界上最流行的语言之一,是一种运行在客户端的脚本语言 (Script 是脚本的意思) l 脚本语言 ...
- java annotation使用介绍
还望支持个人博客站:http://www.enjoytoday.cn 介绍 Annotation的中文名字叫注解,开始与JDK 1.5,为了增强xml元数据和代码的耦合性的产物.注解本身并没有业务逻辑 ...
- java 和 spring 的异步
spring 的 async 注解 https://www.baeldung.com/spring-async@Async will make it execute in a separate thr ...