【机器学习】Jupyter Notebook如何使用之基本步骤和进阶操作

引言

Jupyter Notebook 是一个交互式计算环境,它允许创建包含代码、文本和可视化内容的文档

文章目录

  • 引言
  • 一、基本步骤
    • 1.1 启动 Jupyter Notebook
    • 1.2 使用 Jupyter Notebook 仪表板
    • 1.3 在笔记本中工作
    • 1.4 常用快捷键
    • 1.5 导出和分享笔记本
  • 二、进阶用法
    • 2.1 组织笔记本结构
    • 2.2 编写清晰的代码
    • 2.3 使用魔术命令
    • 2.4 管理单元格输出
    • 2.5 使用交互式小部件
    • 2.6 代码单元格管理
    • 2.7 利用扩展功能
    • 2.8 数据分析最佳实践
    • 2.9. 资源管理
    • 2.10 安全性和隐私

一、基本步骤

以下是使用 Jupyter Notebook 的一些基本步骤:

1.1 启动 Jupyter Notebook

  1. 打开命令行(终端)
    在 Windows 上,可以使用命令提示符或 Anaconda Prompt,在 macOS 或 Linux 上,使用终端
  2. 导航到工作目录
    使用 cd 命令导航到想保存笔记本的目录
  3. 启动 Jupyter Notebook
    输入以下命令并按回车:
jupyter notebook

这将启动 Jupyter 服务器,并在默认的 Web 浏览器中打开 Jupyter Notebook 的仪表板,如图所示:
在这里插入图片描述

1.2 使用 Jupyter Notebook 仪表板

仪表板显示了当前目录下的文件和文件夹,以下是一些基本操作:

  • 新建笔记本:点击右上角的“新建”按钮,选择 Python3 或其他想使用的内核来创建一个新的笔记本、文件夹或终端
    在这里插入图片描述

  • 打开笔记本:点击已存在的笔记本文件名,如图所示:
    在这里插入图片描述
    在这里插入图片描述

  • 重命名笔记本:点击笔记本文件名旁边的复选框,然后点击“重命名”按钮,如图所示:
    在这里插入图片描述

  • 删除笔记本:选择笔记本,然后点击“删除”按钮,如图所示:
    在这里插入图片描述

1.3 在笔记本中工作

一旦打开或创建了一个笔记本,可以开始编写代码和文本

  • 添加新单元格:点击“+”按钮或使用菜单中的“插入”选项来添加新单元格
  • 选择单元格类型
    • 代码(Code):用于编写和执行代码
    • Markdown:用于编写格式化的文本和内联的 LaTeX 数学表达式
    • 原始NBConvert:用于原始文本
  • 编辑单元格:点击单元格,开始输入文本或代码
  • 运行单元格
    • 按下 Shift + Enter 来运行当前单元格并选择下面的单元格
    • 按下 Alt + Enter 来运行当前单元格并在下面插入一个新单元格
    • 按下 Ctrl + Enter 来运行当前单元格而不移动焦点
  • 保存笔记本:使用菜单中的“文件”选项,然后选择“保存和检查点”或使用快捷键 Ctrl + S

1.4 常用快捷键

  • Shift + Enter:运行当前单元格,选择下面的单元格
  • Alt + Enter:运行当前单元格,并在下面插入一个新单元格
  • Ctrl + Enter:运行当前单元格
  • A:在上方插入新单元格
  • B:在下方插入新单元格
  • D + D(两次D):删除选中的单元格
  • M:将当前单元格转换为 Markdown 单元格
  • Y:将当前单元格转换为代码单元格

1.5 导出和分享笔记本

  • 导出:可以将笔记本导出为多种格式,如 HTML、PDF、Markdown 或纯 Python 脚本
  • 分享:Jupyter Notebook 可以通过电子邮件、Dropbox、GitHub 或其他在线平台轻松分享在这里插入图片描述

通过这些基本步骤,可以开始使用 Jupyter Notebook 进行数据探索、分析、可视化以及教学和学习

二、进阶用法

遵循以下实践和建议,以提高工作效率和代码质量

2.1 组织笔记本结构

  • 使用Markdown单元格:为笔记本添加清晰的标题、子标题和章节描述,使用Markdown格式来提高可读性
  • 分割内容:将笔记本分割成不同的部分,每个部分使用Markdown单元格进行说明,然后是相应的代码单元格
  • 使用目录:对于较长的笔记本,可以在顶部创建一个目录,方便快速导航

2.2 编写清晰的代码

  • 遵循PEP 8:遵守Python编码标准PEP 8,保持代码格式一致
  • 使用注释:在代码单元格中添加注释,解释复杂的逻辑或重要的步骤
  • 避免冗余:删除不再需要的代码,保持笔记本整洁

2.3 使用魔术命令

  • %matplotlib inline:用于在笔记本中内联显示图表
  • %load_ext:加载扩展,如line_profiler用于性能分析
  • %timeit:测量代码执行时间

2.4 管理单元格输出

  • 清除输出:使用“单元格”菜单中的“全部清除输出”来清理笔记本
  • 禁用代码输出:在代码单元格后面添加一个分号;来阻止输出显示
  • 折叠长输出:对于长输出,使用out = _(下划线)来保存输出,而不立即显示

2.5 使用交互式小部件

  • ipywidgets:使用ipywidgets库创建滑块、下拉菜单和其他交互式小部件,使笔记本更加动态

2.6 代码单元格管理

  • 单元格合并:使用“编辑”菜单中的“合并单元格”来合并多个单元格
  • 单元格拆分:将一个单元格拆分成多个单元格,以细化代码块

2.7 利用扩展功能

  • 安装扩展:使用nbextensions来安装和启用Jupyter Notebook扩展,如代码折叠、预览Markdown等
  • 使用Nbextensions:例如,Table of Contents (2)可以自动生成目录

2.8 数据分析最佳实践

  • 使用Pandas:高效处理数据集
  • 可视化:使用Matplotlib、Seaborn或Plotly进行数据可视化
  • 版本控制:使用git进行版本控制,注意.ipynb_checkpoints目录不应被提交到版本库

2.9. 资源管理

  • 关闭未使用的内核:在Jupyter Dashboard中关闭不再需要的内核,释放资源
  • 定期保存:定期保存笔记本,避免数据丢失

2.10 安全性和隐私

  • 避免在笔记本中保存敏感数据:不要在笔记本中保存密码或敏感信息
  • 使用JupyterHub:在多用户环境中使用JupyterHub来管理用户访问和资源

通过以上建议,可以更加优雅和高效地使用Jupyter Notebook,不仅提高个人工作效率,也能使笔记本更加易于理解和分享

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1486882.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

“微软蓝屏”事件,给IT行业带来的宝贵经验和教训

“微软蓝屏”事件是指2024年7月19日发生的一次全球性技术故障,主要涉及微软视窗(Windows)操作系统及其相关应用和服务。 以下是对该事件的详细解析: 一、事件概述 发生时间:2024年7月19日事件影响:全球多个…

暑期c++ 命名空间

今天是暑期第一天开始写c笔记&#xff0c;新起点&#xff0c;新开始加油 我们先来看两串代码 这串代码编译没有问题 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> int rand 14; int main(void) {int rand 14;printf("%d\n", rand);return 0; }但是…

鸽哒IM即时通讯安卓+苹果双系统源码20240723(反编译+二次开发版)

功能特点&#xff1a; 1、该软件支持加好友、消息私聊、消息群聊、朋友圈、红包、语音、视频、表情包&#xff0c;定位等。 2、此外&#xff0c;该软件还支持阅后即焚、消息过期自动销毁、支持3DES加密传输、支持端到端传输&#xff0c;保护消息隐私。 3、后台使用的是酷信的…

Java面试八股之详细阐述Spring的DI和IOC

详细阐述Spring的DI和IOC Spring框架的两大核心特性之一就是控制反转&#xff08;Inversion of Control, IoC&#xff09;&#xff0c;另一个密切相关的是依赖注入&#xff08;Dependency Injection, DI&#xff09;。这两个概念是Spring实现松耦合、可测试和可管理软件组件的…

JMeter:BeanShell到JSR223迁移中的注意事项

前言 在之前的文章JMeter&#xff1a;BeanShell向JSR223迁移过程遭遇的java标准库不可用问题-如何切换JDK版本中引用了一段使用BeanShell对入参进行加密的脚本&#xff0c;迁移到JSR223&#xff0c;虽然更换JDK后编译通过&#xff0c;看似也可以执行了&#xff0c;但是其实那段…

强化数字科技基石:深化基础理论研究

加强数字科技基础理论研究并增加对其的资金投入&#xff0c;对于推动科技进步、培养创新人才以及构建具有国际竞争力的科技创新体系都具有深远意义。同时为了加强数字科技基础理论研究并推动产业园的发展&#xff0c;我们可以从以下几个方面进行&#xff1a; 一、加强数字科技…

【vue前端项目实战案例】Vue3仿今日头条App

本文将开发一款仿“今日头条”的新闻App。该案例是基于 Vue3.0 Vue Router webpack TypeScript 等技术栈实现的一款新闻资讯类App&#xff0c;适合有一定Vue框架使用经验的开发者进行学习。 项目源码在文章末尾 1 项目概述 该项目是一款“今日头条”的新闻资讯App&#xf…

P6 优化篇 - 数据折线图可视化步骤

增加新页面, 则需要在 page.json里面增加页面信息 2.添加目录, 和路径 同时也要添加目录了 , 新建目录LineChart , 添加文件LineChart.vue 4.LineChart.vue 直接复制黏贴 <template><view class"container"><!-- 图表显示区域 --><view cla…

如何做校园圈子小程序,需要哪些功能?可打包APP小程序H5,源码交付,支持二开!

独立学校首页 支持每个学校独立首页!每个学校都可以拥有专属首页&#xff0c;打造不同风格的学校首页展示效果 多业务覆盖 可实现校园内外卖、跑腿、超市、药店水果、快餐店等业务全覆盖!所有配送业务平台都可开展 多站点运营 支持多学校多站点运营&#xff0c;各分站管理员可独…

Java面试八股之简述spring boot的目录结构

简述spring boot的目录结构 Spring Boot 项目遵循标准的 Maven 或 Gradle 项目布局&#xff0c;并且有一些约定的目录用于组织不同的项目组件。下面是一个典型的 Spring Boot 项目目录结构&#xff1a; src/main/java&#xff1a;包含所有的 Java 源代码&#xff0c;通常按包组…

【计算机毕业设计】基于微信小程序的传染病防控宣传系统【源码+lw+部署文档】

包含论文源码的压缩包较大&#xff0c;请私信或者加我的绿色小软件获取 免责声明&#xff1a;资料部分来源于合法的互联网渠道收集和整理&#xff0c;部分自己学习积累成果&#xff0c;供大家学习参考与交流。收取的费用仅用于收集和整理资料耗费时间的酬劳。 本人尊重原创作者…

基于FPGA的YOLOV5s神经网络硬件部署

一 YOLOV5s 本设计以YOLOV5s部署于FPGA上为例进行分析概述。YOLOV5s网络主要包括backbone、neck、head三部分。 涉及的关键算子&#xff1a; Conv&#xff1a;卷积&#xff0c;包括3*3、1*1&#xff0c;stride1/2Concat&#xff1a;Upsample:Pooling&#xff1a;ADD 二 评估 …

大语言模型-GPT-Generative Pre-Training

一、背景信息&#xff1a; GPT是2018 年 6 月由OpenAI 提出的预训练语言模型。 GPT可以应用于复杂的NLP任务中&#xff0c;例如文章生成&#xff0c;代码生成&#xff0c;机器翻译&#xff0c;问答对话等。 GPT也采用两阶段的训练过程&#xff0c;第一阶段是无监督的方式来预训…

【数据结构】二叉树——顺序结构——堆及其实现

一、树 1.1、树的概念和结构 树是一种非线性的数据结构&#xff0c;它是由n&#xff08;n>0&#xff09;个有限节点组成的一个具有层次关系的集合。 树有一个特殊的节点&#xff0c;称为根节点&#xff0c;根节点没有前驱结点。 除根节点外&#xff0c;其余部分被分为M&…

《0基础》学习Python——第十九讲__爬虫/<2>

一、用get请求爬取一般网页 首先由上节课我们可以找到URL、请求方式、User-Agent以及content-type 即&#xff1a;在所在浏览器页面按下F12键&#xff0c;之后点击网路-刷新&#xff0c;找到第一条双击打开标头即可查看上述所有内容&#xff0c;将上述URL、User-Agent所对应的…

【故障排除】Unity在编辑器模式下Play时闪退

一开始以为是偶然的情况&#xff0c;但逐渐发现了规律&#xff1a; 每次某个角色释放技能的时候就会闪退。 为了找到问题代码&#xff0c;找了一下存放运行Log的文件夹&#xff1a; 打开 Console 窗口&#xff08;菜单&#xff1a;Window > General > Console&#xff…

记事本案例组件版本(源码分享)

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 非常期待和您一起在这个小…

axios请求大全

本文讲解axios封装方式以及针对各种后台接口的请求方式 axios的介绍和基础配置可以看这个文档: 起步 | Axios中文文档 | Axios中文网 axios的封装 axios封装的重点有三个&#xff0c;一是设置全局config,比如请求的基础路径&#xff0c;超时时间等&#xff0c;第二点是在每次…

蓝桥杯单片机学习总结(Day15 超声波测距)

开启超声波模块测距方法&#xff1a; X20106A是一款红外线检波接收的专用芯片&#xff0c;常用于电视机红外遥控接收器。当CX20106A接收到40KHz的信号时&#xff08;第五脚200K的电阻决定了其频率为40KHz&#xff09;&#xff0c;会在OUT脚输出一个低电平下降脉冲。这个信号甚至…

Ubuntu-文件管理器中鼠标右键添加文本文件

文件管理器中鼠标右键添加文本文件 一、概述二、步骤 一、概述 Ubuntu在文管右键发现没有创建文本文件的菜单&#xff0c; 期望如下所示&#xff0c;这样的操作非常简单 二、步骤 找到模板文件夹 在模板文件夹&#xff0c;创建自己想要的文件就好啦 这个也是支持放文件夹去…