Jupyter Notebook使用

    技术2022-07-10  137

    不论你是刚开始学 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

    好文要顶 关注我 收藏该文 youxin 关注 - 32 粉丝 - 302 +加关注 0 0 <div class="clear"></div> <div id="post_next_prev"> <a href="https://www.cnblogs.com/youxin/p/11229706.html" class="p_n_p_prefix">« </a> 上一篇: <a href="https://www.cnblogs.com/youxin/p/11229706.html" title="发布于 2019-07-23 09:13">jstack基本使用</a> <br> <a href="https://www.cnblogs.com/youxin/p/11486837.html" class="p_n_p_prefix">» </a> 下一篇: <a href="https://www.cnblogs.com/youxin/p/11486837.html" title="发布于 2019-09-08 16:02">Python pandas</a>
    Processed: 0.013, SQL: 9