一 概述

  Jupyter Notebook是以web交互式的编程接口,是IPython notebook的升级版本。主要是针对python,另外支持运行 40 多种编程语言。Jupyter可以在个人机器开发,也可以连接到集群中使用分布式计算引擎spark等以及数据库(mysql/hive/hdfs)。

  Jupyter相对于其他python编程工具来说,除了通常的新建、删除、更改、下载编程文件外,还支持在线编程运算可帮助持续开发,特别在企业中有些项目需要持续很长时间的开发,每天下班后关闭jupyter,只要服务器的kernel不关闭,jupyter会保存好开发时的数据缓存和可视化结果,第二天继续开发,而不用又从头再运行,再配合支持markdown的功能,使得jupyternotebook方便记录开发过程和教学。下面对特征工程的教程就是利用了在jupyternotebook中使用markdown生成的,并且支持对文章的内容字体高亮。

二 使用

2.1 启动Jupyter Notebook

当你开启 Jupyter Notebook 时,主界面如下所示:

如果想新建一个 notebook,只需要点击New,选择你希望启动的 notebook 类型即可。

本次选择python3,出现如下界面:

其中上边显示的是代码单元格,对应的还有markdown单元格。

注:jupyter有三种类型的单元格:code cells,markdown cells,raw cells,常用的是code cells和 markdown cells类型。

简单的单元格操作:

ctrl+enter 执行选择的单元格
shift+enter 执行当前的单元格并选中下边的单元格
alt+enter 执行当前的单元格并在下边插入新的单元格
a 选中的单元格上边增加一个新的单元格
b 选中的单元格下边增加一个新的单元格
m 将当前的单元格由代码格式转化成markdown的格式
y 将当前的单元格由markdowm格式转化成代码格式

高级单元格操作:

  • 如果想删除某个单元格,可以选择该单元格,然后依次点击Edit -> Delete Cell
  • 如果想移动某个单元格,只需要依次点击Edit -> Move cell [up | down]
  • 如果想剪贴某个单元测,可以先点击Edit -> Cut Cell,然后在点击Edit -> Paste Cell [Above | Below]
  • 如果你的 notebook 中有很多单元格只需要执行一次,或者想一次性执行大段代码,那么可以选择合并这些单元格。点击Edit -> Merge Cell [Above | below]

记住这些操作,它们可以帮助你节省许多时间。

2.2 code cells

  Code模式下,除了一般的python代码编辑外,jupyter还支持一些其他的编程语言,如R,Julia,bash等。不过需要使用magic单元。Magic单元分为两种,一种是line magics,另外一种cell magics。Line magic是通过在前面加%,表示magic只在本行有效。Cell magics是通过在前面加%%,表示在整个cell单元有效。比如使用%%bash,产生了linux下的shell环境(window下不支持,不过可以使用%%cmd),这样就可以运行pwd和ls命令了。

其中一些比较常用的magic:

%matplotline inline在jupyter内打印图片;

%load:将本地py文件代码导入进来,例如 %load test.py

%run:运行本地代码,利用这个magic,我们可以把一些头文件,基本设置,共同函数写在不同的notebook内,用的时候运行一下就可以了。

%time:统计代码运行的时间,当然还有更多有趣的一些magic属性来方便我们的工作。

2.3 markdown

  jupyter提供的markdown是一个非常实用的功能,有了markdown可以将写代码和内容编辑非常好的结合,特别代码内容说明,markdown是一种纯文本标记语言,满足标题,公式,字体加粗,颜色甚至流程图和表格的内容编辑。更重要的是这类单元格也接受 HTML 代码。这样,你就可以在单元格类实现更加丰富的样式,添加图片,等等。

(1) 以#标记开头,意味着这是一个一级标题。如果需要子标题,可以使用以下标记表示(改变单元格类型时弹出消息中有解释):

# : 一级标题
## : 二级标题
### : 三级标题
...

#之后写下文档的标题,然后计算该单元格。你会发现一个样式非常好看的标题。

(2)在 notebook 中添加 Jupyter 的 logo,将其大小设置为 100px x 100px,并且放置在单元格左侧:

<img src="http://blog.jupyter.org/content/images/2015/02/jupyter-sq-text.png"
style="width:100px;height:100px;float:left">

(3) 公式

# 这里举一个例子
$$\int_0^{+\infty} x^2 dx$$

结果如下图所示:

参考:https://www.cnblogs.com/nxld/p/6566380.html

浅析Jupyter Notebook的更多相关文章

  1. 远程访问jupyter notebook

    远程访问Jupyter Notebook Jupyter Notebook很好用,但是直接远程在服务器上用体验当然不如本地计算机好,那么如何远程访问呢? 首先需要在服务器上安装好ipython, ju ...

  2. Python,Jupyter Notebook,IPython快速安装教程

    0.安装环境 Windows10,Python3.5.1,IPython,jupyter notebook,and other functionality 官方安装文档Linux版3.x 官方安装文档 ...

  3. Jupyter Notebook 27绝技——27 Jupyter Notebook tips, tricks and shortcuts

    转载自:https://www.dataquest.io/blog/jupyter-notebook-tips-tricks-shortcuts/ Jupyter notebook, formerly ...

  4. Jupyter notebook 配置目录

    默认打开Jupyter notebook,工作目录是C:\Users\Username,这里面有很多其它与Jupyter notebook无关的文件,也很有用,不能看着烦就删掉,所以需要修改Jupyt ...

  5. 如何用Jupyter Notebook打开Spark

    电脑已经装了anaconda python,然后下载了spark2.1.0.因为版本太新,所以网上和书上的一些内容已经不再适用.比如关于如何使用IPython和Jupyter,教程给出的方法是用如下语 ...

  6. jupyter notebook + pyspark 环境搭建

    安装并启动jupyter 安装 Anaconda 后, 再安装 jupyter pip install jupyter 设置环境 ipython --ipython-dir= # override t ...

  7. Jupyter notebook 安装,初步使用

    在学习算法,图像处理过程中,理论结合实际的时候总要写一些程序,我用的是PYTHON.这时候,选择一款称手的工具比较重要.之前我用自带的IDLE,也还可以,但是操作不够便捷,文件组织也不是很好.后来想用 ...

  8. pyspark 中启动 jupyter notebook

    还是打算选择python学习spark编程 因为java写函数式比较复杂,scala学习曲线比较陡峭,而且sbt和eclipse和maven的结合实在是让人崩溃,经常找不到主类去执行 python以前 ...

  9. 详解 jupyter notebook 集成 spark 环境安装

    来自: 代码大湿 代码大湿 1 相关介绍 jupyter notebook是一个Web应用程序,允许你创建和分享,包含活的代码,方程的文件,可视化和解释性文字.用途包括:数据的清洗和转换.数值模拟.统 ...

随机推荐

  1. python网络爬虫之使用scrapy自动登录网站

    前面曾经介绍过requests实现自动登录的方法.这里介绍下使用scrapy如何实现自动登录.还是以csdn网站为例. Scrapy使用FormRequest来登录并递交数据给服务器.只是带有额外的f ...

  2. 百度小程序转换微信小程序

    Python脚本,一键转换Github地址:https://github.com/DWmelon/py-transfer-BdToWx 运行条件 具备Python环境,可在命令行中使用Python命令 ...

  3. Map总结--HashMap/HashTable/TreeMap/WeakHashMap使用场景分析(转)

    首先看下Map的框架图 1.Map概述 1.Map是键值对映射的抽象接口 2.AbstractMap实现了Map中绝大部分的函数接口,它减少了“Map实现类”的重复编码 3.SortedMap有序的“ ...

  4. java和js互调 拨打电话

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  5. python输出shell命令执行结果

    import os,subprocess p = subprocess.Popen("df -h", shell=True, stdout=subprocess.PIPE) out ...

  6. Linux学习之路(三)搜索命令

    1.文件搜索命令locate 2.命令搜索命令whereis与which 3.字符串搜索命令grep 4.find命令与grep命令的区别 locate命令相对于find命令搜索非常快,find命令在 ...

  7. IDEAL葵花宝典:java代码开发规范插件:GsonFormat插件将JSONObject格式的String 解析成实体

    前言: GsonFormat插件主要用于使用Gson库将JSONObject格式的String 解析成实体,该插件可以加快开发进度,使用非常方便,效率高. 这个教程主要是学习IntelliJ IDEA ...

  8. 破解 Navicat Premium 12

    一.下载 若文件百度云链接失效,请发邮件给博主:1766211120@qq.com 1.安装文件下载 v12.0.11(x64)版本下载地址如下 链接:https://pan.baidu.com/s/ ...

  9. not in和not exist的区别(转)

    in和exists in 是把外表和内表作hash 连接,而exists是对外表作loop循环,每次loop循环再对内表进行查询.一直以来认为exists比in效率高的说法是不准确的. 如果查询的两个 ...

  10. selenium 经常用到的API

    一.webdriver 属性及方法: 1.获取当前页面的 url driver.current_url 2 .获取窗口相关信息 get_window_position() 返回窗口x,y坐标 get_ ...