Jupyter notebook安装与使用
Jupyter notebook简介及其安装
Jupyter notebook(又称IPython Notebook)是一个非常流行的交互式计算环境,特别适用于数据分析、机器学习和科学计算领域,它允许用户创建和共享文档,其中可以包含实时代码、可视化输出和文本注释。
使用conda或pip安装Jupyter notebook,打开终端输入如下指令:
conda install jupyter
pip install jupyter
安装完成后,可以通过以下命令启动Jupyter notebook:
jupyter notebook
kernel环境配置
conda环境配置好后,通常会出现Jupyter notebook的kernel与conda环境不匹配,如下图kernel环境只有Python 3,而我在conda配置了一个名为cv的环境,却没有显示。
在此提供两种方法解决:
方法一
添加conda环境到jupyter notebook的kernel
conda activate xxx #进入到该虚拟环境中
pip install --user ipykernel #安装ipykernel
python -m ipykernel install --user --name=xxx #添加虚拟环境kernel到jupyter中
#成功添加后会打印
#Installed kernelspec xxx in /home/user/.local/share/jupyter/kernels/xxx
在删除虚拟环境后,我们同样需要手动删除其添加到jupyer中的kernel:
查看当前jupyter notebook的所有kernel
jupyter kernelspec list
删除kernel
jupyter kernelspec uninstall xxx
方法二
安装ipykernel和nb_conda两个库。
conda install ipykernel
conda install nb_conda
重新打开jupyter notebook会发现当前已有的所有conda环境均添加至kernel中。
如下图所示,名字为cv的conda环境添加到kernel环境中。
Jupyter notebook的使用
基础用法
一旦Jupyter Notebook启动,便可以创建一个新的Notebook或打开一个已存在的Notebook。
编写代码和文本
每个Notebook以.ipynb扩展名保存,并包含一个或多个“单元格”。在单元格内编写代码和文本:
- 代码单元格:这些单元格用于编写和执行代码,在单元格中输入Python代码,然后按Shift + Enter来运行它。执行结果将显示在单元格下方。
- Markdown单元格:这些单元格用于添加文本注释、说明和标记(例如标题、段落、列表、链接等),使用Markdown语法来格式化文本,使其更具可读性。
执行代码
单击代码单元格,然后按Shift + Enter键以执行其中的代码。执行结果将在单元格下方显示。此外,可以多次执行同一单元格,也可以在不同单元格之间执行代码。
保存和导出
使用文件菜单中的选项可以保存Notebook,将Notebook导出为不同的格式,如HTML、PDF或Markdown。
共享和协作
Jupyter Notebook支持轻松共享和协作。您可以将Notebook保存在云端存储中,如GitHub、GitLab或Jupyter Notebook云服务,并与他人共享。其他人可以查看和编辑Notebook,以便进行协作。
高阶用法
Jupyter Notebook 是一个功能强大的工具,除了基本的使用方式外,还有一些高阶用法和技巧,可以提高工作效率和改善工作流程。以下是一些 Jupyter Notebook 的高阶用法:
魔法命令(Magic Commands)
Jupyter Notebook 提供了许多特殊的命令,称为"魔法命令",以便于执行各种任务。一些常见的魔法命令包括:
- %run:运行外部Python脚本。
- %load:将外部脚本的内容加载到单元格中。
- %timeit:测量代码块的执行时间。
- %debug:进入调试模式。
- %matplotlib inline:在Notebook中显示Matplotlib图形。
Notebook扩展
Jupyter Notebook 支持许多扩展,可以增强其功能,如自动保存、自动编号、代码折叠等。一些受欢迎的Notebook扩展包括 nbextensions 和 jupyter_contrib_nbextensions。这些扩展可以通过conda或pip进行安装,并通过Jupyter Notebook的Nbextensions标签页启用。
使用Widgets创建交互式界面
Jupyter Notebook 允许您使用ipywidgets库创建交互式小部件,以便用户可以与代码进行互动。这对于数据可视化和参数调整非常有用。您可以创建滑块、按钮、下拉菜单等小部件,并将它们嵌入到Notebook中。
使用nbconvert导出Notebook
Jupyter Notebook 可以将Notebook导出为各种格式,如HTML、PDF、LaTeX、Markdown等。使用 nbconvert 命令可以将Notebook转换为所需的格式。例如,要将Notebook转换为HTML文件,可以运行:
jupyter nbconvert --to html your_notebook.ipynb
版本控制和协作
使用版本控制工具(如Git)来跟踪Notebook的更改,并将Notebook存储在代码托管平台(如GitHub)上,以便与其他人协作。GitHub可以直接渲染Notebook,并允许多人一起编辑。
使用Magics进行Shell命令
Jupyter支持!前缀,可以在Notebook中运行Shell命令。例如,!ls可以列出当前目录的内容,!pip install package可以在Notebook中安装Python软件包。
使用Markdown和LaTeX编写文档
Jupyter Notebook的Markdown单元格支持LaTeX数学公式和标记,可以创建美观的文档。这对于撰写技术报告和学术论文非常有用。
使用nbviewer共享Notebook
使用 nbviewer,您可以共享和在线查看Jupyter Notebook,而不需要在本地运行Jupyter服务器。
自定义Notebook主题
您可以使用 jupyterthemes 库来自定义Jupyter Notebook的主题和样式,以满足您的喜好。
使用带有GPU或云服务的Notebook
如果需要更强大的计算资源,可以使用云服务提供商(如Google Colab、Azure Notebooks)或带有GPU支持的Notebook环境来运行Notebook。