• jupyter notebook使用


     

    在完成Ananconda安装后,在cmd窗口中输入jupyter notebook,随机将会在默认浏览器中打开jupyter notebook主界面(建议将Chrome设置为默认浏览器)。

    此架构的一个优点是,内核无需运行 Python。由于 notebook 和内核分开,因此可以在两者之间发送任何语言的代码。例如,早期的两个非 Python 内核分别是 R 语言和 Julia 语言。使用 R 内核时,用 R 编写的代码将发送给执行该代码的 R 内核,这与在 Python 内核上运行 Python 代码完全一样。IPython notebook 已被改名,因为 notebook 变得与编程语言无关。新的名称 Jupyter 由、和组合而成。

    notebook 的另一大好处,就是可以同时管理多个版本,当你同时需要 Python 2 和 Python 3,或者 Scala 2.10 和 2.11 的内核的时候,是十分方便的。

    notebook 界面由基本的单元格组成,每个单元格在可编辑状态下可以任意的输入代码和注释说明(markdown)。默认的是代码格式,也就是下图中工具栏列表所示的。

    单元格绿色代表内容可编辑状态(比如输入代码),蓝色代表单元格可操作状态(比如删除单元格,必须回到蓝色),而蓝色与绿色之间可以用和来切换。

    Markdown单元格,是格式化语法,可以加入链接、将文本样式设为粗体或斜体和设置代码格式。像代码单元格一样,按或可运行 Markdown 单元格,这会将 Markdown 呈现为格式化文本。

    notebook 自带一组快捷键。

    Magic 命令的前面带有一个或两个百分号(或),分别代表行 Magic 命令和单元格 Magic 命令。行 Magic 命令仅应用于编写 Magic 命令时所在的行,而单元格 Magic 命令应用于整个单元格。很多 Magic 关键字的使用,这里只列出了两个常用的介绍给大家。更多内容请参考:http://ipython.readthedocs.io/en/stable/interactive/magics.html

    notebook 中的默认图像可能会显得模糊。可以在 %matplotlib inline 之后使用来呈现分辨率较高的图像。

     https://jupyter.readthedocs.io/en/latest/content-quickstart.html

     https://www.jianshu.com/p/91365f343585

    ipynb转为py: jupyter nbconvert --to script  *.ipynb

    jupyter notebook是一个交互式的IDE,虽然不像PyCharm这种重型IDE那么强大,但是仍然可以当做IDE来用,而且有一些特色非常适合用来进行数据分析:

    • 可以单行运行代码,这样就可以一行一行的检查代码,查看运行结果,反复尝试;
    • 每次运行后变量都保存在内存中,因此可以重复使用(这对于一些比较耗时的计算过程,尤其有用);
    • 可以写markdown格式的注释,这样就可以将整个分析过程非常清晰的表达出来;
    • 可以利用Mathjax展示数学公式;
    • 可以插入图片等,可以制作出图和代码并茂的非常精致的笔记和文档(有很多已经出版的书都是完全使用notebook来写作的).

    jupyter notebook并不适用代码量比较大的工程类项目。

    在Anaconda中,添加对R的支持

    有时候需要用到R,在anaconda中安装的R默认是由微软的发行版(Microsoft R Open, MRO)

    1. 安装MRO

    conda create -n mro_env r-essentials  # 这里创建了一个新的虚拟环境"mro_env"来安装与R相关的包

    2. 安装IRkernel

    安装好R的虚拟环境后,需要安装IRKernel才能在在jupyter lab中使用R。第一步结束后进行下面的操作:

    conda activate mro_env  # 进入新创建的虚拟环境

    R  # 直接输入R进入R的命令行界面,在R内部安装所需的包和IRkernel

    install.packages(c('repr', 'IRdisplay', 'evaluate', 'crayon', 'pbdZMQ', 'devtools', 'uuid', 'digest'))
    devtools::install_github('IRkernel/IRkernel')

    3. 激活IRkernal

    IRkernel::installspec()

    完成以上操作之后,再使用之前的命令安装JupyterLab,就可以在JupyterLab中使用R了:

    2. 起因

    最近打算好好学习下统计学和机器学习方面的知识,我的习惯是学习新内容前需要有好的记录工具,否则就坚持不下去,容易气馁。之前学习R语言的时候爱上了Rstudio和Rmd这种交互式文档语言(interactive language),但是因为R更多的是用来做统计分析的,功能还是比较薄弱,不能适应复杂的任务,因此需要开辟新的语言进行学习,之前也学习过python,了解其语法,但是没有坚持的原因有两点,其一本科的时候没有项目进行练手,其二是因为没有找到合适自己的IDE。现在重新学习语言,找到了Jupyter Notebook,类似与Rstudio一样可以做到所写即所得。所以开始熟悉怎么使用Jupyter Notebook,将一些技巧记录在此。

    3.技巧

    3.1 配置及打开

    安装方法之类的不多讲,安装之后希望在任何地方打开Jupyter的话在Terminal下cd到目标文件夹,键入Jupyter Notebook自然能在你的浏览器下打开Jupyter,则工作目录即为你的目标目录。

    希望查看Jupyter的配置文件的话键入jupyter notebook --generate-config则能看到配置文件。

    3.2 加载本地.py文件

    还可以将本地的.py文件load到jupyter的一个cell中
    例如有一个test.py文件,需要将其载入到jupyter的一个cell中
    test.py内容如下:

    import caffe
    SolverName = "/root/workspace"
    sovler = caffe.AdamSolver(SolverName)
    

    在需要导入该段代码的cell中只需要输入如下

    %load test.py #test.py是当前路径下的一个python文件
    

    3.3 作为unix command使用

    jupyter的cell还可以作为unix command使用,具体方法为:在unix command前面加入一个感叹号“!”

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

    3.4 添加目录功能

    还可以为Jupyter Notebook添加目录功能,原始的Jupyter是不支持markdown添加目录功能的,实际上,可以利用Jupyter notebook extensions去使得这种功能实现,具体方法:

        `conda install -c conda-forge jupyter_contrib_nbextensions`
    

    打开Jupyter Notebook,在它的(新增的)Nbextensions标签下勾选“Table of Contents(2)” ,关于extensions还有很多其他的功能可以自行查看。

    3.5 魔法命令 (magic function)

    所有以%开头的方法,都是Jupyter里面的所谓魔术方法(Magic function),也就是ipython内置的一些方法。需要注意的是,魔术方法有%和%%之分,比如%timeit%%timeit。在ipython中有专门的叫法,前者叫line magic后者叫cell magic。顾名思义,前者是专门针对一行的命令,后者针对多行的命令。

    通过%lsmagis可以查看所有的magic命令,使用?或者??可以查看该命令的信息,后者可以查看源码。如: %alias?,会出现该方法的描述。

    3.6 Jupyter中使用R
    安装IRkernel

  • 相关阅读:
    生成器
    迭代器
    装饰器
    Maven工具学习(六)----Maven依赖的版本锁定与版本常量
    SpringBoot学习记录之整合JSP
    SpringBoot学习记录之入门篇
    【k8s】ep-addresses
    【k8s】ep-metadata
    【k8s】Endpoints
    【k8s】cj-suspend
  • 原文地址:https://www.cnblogs.com/timssd/p/4220267.html
Copyright © 2020-2023  润新知