ML学习笔记之Jupyter Notebook各种使用方法

2019-12-24 14:43:58 浏览数 (1)

0x00 概述

Jupyter Notebook安装的官方网站

  • 安装Jupyter Notebook的先决条件:已经安装了python(python 2.7 或者是python3)
  • 具体的安装方法:
    • 官方建议利用Anaconda安装Jupyter
    • 安装完成Anaconda后,如果该Anaconda并不自带Jupyter Noterbook,那么,打开cmd,输入:conda install jupyter
  •  可以使用pip install jupyter安装

0x01 更改Jupyter notebook的工作空间

1.1 方式一

如何找到该配置文件?

  • 在cmd中输入jupyter notebook --generate-config
  • 如果该配置文件已经存在,那么,会出现如下信息,从中可以见到配置文件存在的位置,注意,此时,输入N,不要overwrite 
  • 如果该配置文件不存在,那么,将会初始化产生一个配置文件
  • 找到配置文件。修改:

修改为:

保存后在cmd中输入:jupyter notebook,会自动触发默认浏览器打开jupyter

1.2 方式二绝招(绝招)

  • 进入工作目录文件夹
  • 键盘Shift 鼠标右键->在此处打开命令窗口-> 在弹出的命令窗口中输入:Jupyter Notebook 
  • Jupyter被打开,定位到当前目录! 

0x02 Jupyter的各种快捷键

  • 执行当前cell,并自动跳到下一个cell:Shift Enter
  • 执行当前cell,执行后不自动调转到下一个cell:Ctrl-Enter
  • 是当前的cell进入编辑模式:Enter
  • 退出当前cell的编辑模式:Esc
  • 删除当前的cell:双D
  • 为当前的cell加入line number:单L
  • 将当前的cell转化为具有一级标题的maskdown:单1
  • 将当前的cell转化为具有二级标题的maskdown:单2
  • 将当前的cell转化为具有三级标题的maskdown:单3
  • 为一行或者多行添加/取消注释:Crtl /
  • 撤销对某个cell的删除:z
  • 浏览器的各个Tab之间切换:Crtl PgUpCrtl PgDn
  • 快速跳转到首个cell:Crtl Home
  • 快速跳转到最后一个cell:Crtl End

0x03 Jupyter Notebook如何导入代码

即导入代码到jupyter notebook的cell中

3.1 将本地的.py文件load到jupyter的一个cell中

问题背景:有一个test.py文件,需要将其载入到jupyter的一个cell中  test.py内容如下:

代码语言:java复制
import caffe
SolverName = "/root/workspace"
sovler = caffe.AdamSolver(SolverName)

方法步骤:  (1)在需要导入该段代码的cell中输入

代码语言:yaml复制
%load test.py #test.py是当前路径下的一个python文件

(2)运行该cell  利用快捷键“Shift Enter”,可以看到如下结果: 

(3)可以看到,运行后,%load test.py被自动加入了注释符号#,test.py中的所有代码都被load到了当前的cell中

3.2 从网络load代码到jupyter

  • 在cell中输入%load http://.....,然后运行该cell,就会将load后面所对应地址的代码load到当前的cell中;
  • 下面给出一个例子,导入matplotlib中的一个小例子color example code
    • 首先,在想要导入该段代码的cell中输入 %load test.py #test.py是当前路径下的一个python文件
      • 1
    • 然后,Shift Enter运行,可以看到如下结果: 

    可以看到,运行后,%load test.py被自动加入了注释符号#,test.py中的所有代码都被load到了当前的cell中

0x04 Jupyter运行python文件

  • 利用jupyter的cell是可以运行python文件的,即在cell中运行如下代码:
代码语言:yaml复制
%run file.py
  • 1

file.py为要运行的python程序,结果会显示在该cell中 

0x05 Jupyter一些其他琐碎用法

5.1 jupyter的cell可以作为unix command使用

具体方法为:在unitx command前面加入一个感叹号“!”

例子:  查看python版本:!python --version 运行python文件:!python myfile.py

5.2 Magic functions

还没有太明白,具体细节见The cell magics in IPython

5.3 获取current working directory

即当前运行的代码所在的路径  具体方法:current_path = %pwd 这样得到的current_path就是当前工作路径的字符转

5.4 使用Matplotlib绘图

在Jupyter Notebook中,如果使用Matplotlib绘图,有时是弹不出图像框的,此时,可以在开头加入

  • 1     %matplotlib inline

0x06 Jupyter中的Markdown

参考1 Markdown 语法手册 (完整整理版)参考

6.1 在jupyter中设置link,需要设置两部分:

  • 要跳到的位置(the destination)  需要在要跳转到的位置添加下面语句:
    • 1    <a id='the_destination'></a>

    这里的id取值任意赋值,下面在添加链接时要用

  • 需要添加链接的文字(an internal hyperlink to the destination),即点击该处可以跳转到the destination,在需要添加链接的文字后面加入:
    • 1     [需要添加连接的文字](#the_destination)
  • 下面是一个例子:  源码: 

效果图: 

6.2 为Jupyter Notebook添加目录功能

  • 原始的Jupyter是不支持markdown添加目录功能的
  • 实际上,可以利用Jupyter notebook extensions去使得这种功能实现
  • 具体方法: 
    • 利用Anaconda安装Jupyter Notebook extensions  conda install -c conda-forge jupyter_contrib_nbextensions
    • 打开Jupyter Notebook,在它的(新增的)Nbextensions标签下勾选“Table of Contents(2)” 
    • 打开一个.jpynb文件,发现,目录功能可用了! 

参考文献  [1] 为Jupyter Notebook添加目录

0 人点赞