【Python数据分析及环境搭建】:教程详解1(第23天)

系列文章目录

  1. Python进行数据分析的优势
  2. 常用Python数据分析开源库介绍
  3. 启动Jupyter服务
  4. Jupyter Notebook的使用

文章目录

  • 系列文章目录
  • 前言
    • 学习目标
    • 1. Python进行数据分析的优势
    • 2. 常用Python数据分析开源库介绍
      • 2.1 NumPy
      • 2.2 Pandas
      • 2.3 Matplotlib
      • 2.4 Seaborn
      • 2.5 Sklearn
      • 2.6 Jupyter Notebook
    • 3 启动Jupyter服务
      • 3.1 设置jupyter服务密码
      • 3.2 生成Jupyter配置文件并配置
      • 3.3 启动jupyter
    • 4 Jupyter Notebook的使用
      • 4.1 Jupyter Notebook的界面
      • 4.2 Jupyter Notebook常用快捷键
      • 4.3 Jupyter Notebook中使用Markdown
    • 总结


前言

本教程详解了Python做数据分析的优势,Python数据分析常用开源库,如何启动jupyter notebook,如何使用jupyter notebook。

学习目标

  • 了解Python做数据分析的优势
  • 知道Python数据分析常用开源库
  • 知道如何启动jupyter notebook
  • 知道如何使用jupyter notebook

1. Python进行数据分析的优势

在这里插入图片描述

  • Python作为当下最为流行的编程语言之一,可以独立完成数据分析的各种任务

    • 功能强大,在数据分析领域里有海量开源库,并持续更新

    • 是当下热点——机器学习/深度学习 领域最热门的编程语言

    • 除数据分析领域外,在爬虫,Web开发等领域均有应用

  • 与Excel,PowerBI,Tableau等软件比较

    • Excel有百万行数据限制,PowerBI ,Tableau在处理大数据的时候速度相对较慢

    • Excel,Power BI 和Tableau 需要付费购买授权

    • Python作为热门编程语言,功能远比Excel,PowerBI,Tableau等软件强大

    • Python跨平台,Windows,MacOS,Linux都可以运行

  • 与R语言比较

    • Python在处理海量数据的时候比R语言效率更高
    • Python的工程化能力更强,应用领域更广泛,R专注于统计与数据分析领域
    • Python在非结构化数据(文本,音视频,图像)和深度学习领域比R更具有优势
    • 在数据分析相关开源社区,python相关的内容远多于R语言

2. 常用Python数据分析开源库介绍

2.1 NumPy

  • NumPy(Numerical Python) 是Python数据分析必不可少的第三方库,NumPy的出现一定程度上解决了Python运算性能不佳的问题,同时提供了更加精确的数据类型,使其具备了构造复杂数据类型的能力。
  • 是一个运行速度非常快的数学库,主要用于数组计算,包含:
    • 高性能科学计算和数据分析的基础包
    • ndarray,多维数组,具有矢量(向量)运算能力,快速、节省空间
    • 矩阵运算,无需循环,可完成类似Matlab(商业数学软件)中的矢量运算
    • 用于读写磁盘数据的工具以及用于操作内存映射文件的工具

2.2 Pandas

  • Pandas是一个强大的分析结构化数据的工具集,Pandas丰富的API能够更加灵活、快速的对数据进行清洗处理以及分析

  • Pandas在数据处理上具有独特的优势:

    • 底层是基于NumPy构建的,所以运行速度特别的快
    • 有专门的处理缺失数据的API
    • 具有强大而灵活的分组、聚合、转换功能
  • Pandas利器之==Series==

    • Series是一种类似于一维数据的数据结构
    • 是由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即行索引)组成
    • 仅由一组数据也可产生简单的Series对象
  • Pandas利器之==DataFrame==

    • DataFrame是一种表格型的数据结构,既有行索引也有列索引,可以简单的把DataFrame理解为一张数据表

    • 包含有一组或多组有序的列(Series),每列可以是不同的值类型(数值、字符串、布尔型等)

2.3 Matplotlib

  • Matplotlib 是一个功能强大的数据可视化开源Python库
  • Python中使用最多的图形绘图库
  • 可以创建静态,动态和交互式的图表

2.4 Seaborn

  • Seaborn是一个Python数据可视化开源库
  • 建立在matplotlib之上,并集成了pandas的数据结构
  • Seaborn通过更简洁的API来绘制信息更丰富,更具吸引力的图像
  • 面向数据集的API,与Pandas配合使用起来比直接使用Matplotlib更方便

2.5 Sklearn

  • scikit-learn 是基于 Python 语言的机器学习工具
    • 简单高效的数据挖掘和数据分析工具
    • 可供大家在各种环境中重复使用
    • 建立在 NumPy ,SciPy(Scientific Python) 和 matplotlib 上

2.6 Jupyter Notebook

  • Jupyter Notebook是一个开源Web应用程序,使用Jupyter Notebook可以创建和共享
    • 代码
    • 数学公式
    • 可视化图表
    • 笔记文档
  • Jupyter Notebook用途
    • 数据清理和转换
    • 统计分析
    • 数据可视化
    • 机器学习等
  • Jupyter Notebook是数据分析学习和开发的首选开发环境

3 启动Jupyter服务

3.1 设置jupyter服务密码

  • 进入python的命令终端, 在linux终端执行 python 命令

    在这里插入图片描述

  • 输入以下代码设置密码, 记录生成的密码字符串

    from notebook.auth import passwd
    passwd() # 设置自己的密码,然后两次输入确认生成加密字符串, 密码设置为123456即可
    

    在这里插入图片描述

3.2 生成Jupyter配置文件并配置

  • 在linux终端执行以下命令, 生成jupyter_notebook_config.py配置文件

    jupyter notebook --generate-config
    

    在这里插入图片描述

  • 打开jupyter_notebook_config.py配置文件, 在最后添加以下内容即可

    # 打开文件
    vim ~/.jupyter/jupyter_notebook_config.py
    # 添加以下内容
    c.NotebookApp.allow_remote_access = True  #允许远程访问
    c.NotebookApp.allow_root = True          #允许root访问
    c.NotebookApp.ip='*'                     # 所有ip皆可访问  
    c.NotebookApp.password = '上面复制的那个字符串'    
    c.NotebookApp.open_browser = False       # 禁止自动打开浏览器  
    c.NotebookApp.port =8888                 # 端口
    c.NotebookApp.notebook_dir = '/' 
    

    在这里插入图片描述

3.3 启动jupyter

  • linux终端输入 jupyter notebook 命令启动

    jupyter notebook
    

    在这里插入图片描述

  • 在本地浏览器中输入 192.168.88.100:8888, 进入jupyter的web界面
    在这里插入图片描述

    在这里插入图片描述

  • 注意: 不要关闭jupyter服务

    在这里插入图片描述

4 Jupyter Notebook的使用

4.1 Jupyter Notebook的界面

  • 新建notebook文档

    注意:Jupyter Notebook 文档的扩展名为.ipynb,与我们正常熟知的.py后缀不同

    在这里插入图片描述

  • 新建文件之后会打开Notebook界面

    在这里插入图片描述

  • 菜单栏中相关按钮功能介绍:

    Jupyter Notebook的代码的输入框和输出显示的结果都称之为cell,cell行号前的 * ,表示代码正在运行

在这里插入图片描述

4.2 Jupyter Notebook常用快捷键

Jupyter Notebook中分为两种模式:命令模式和编辑模式

  • 两种模式通用快捷键

    • Shift+Enter,执行本单元代码,并跳转到下一单元
    • Ctrl+Enter,执行本单元代码,留在本单元
  • 按ESC进入命令模式

    在这里插入图片描述

    • Y,cell切换到Code模式
    • M,cell切换到Markdown模式
    • A,在当前cell的上面添加cell
    • B,在当前cell的下面添加cell
    • 双击D:删除当前cell
  • 编辑模式:按Enter进入,或鼠标点击代码编辑框体的输入区域

    在这里插入图片描述

    • 撤销:Ctrl+Z(Mac:CMD+Z)
    • 补全代码:变量、方法后跟Tab键
    • 为一行或多行代码添加/取消注释:Ctrl+/(Mac:CMD+/)

4.3 Jupyter Notebook中使用Markdown

  • 在命令模式中,按M即可进入到Markdown编辑模式

  • 使用Markdown语法可以在代码间穿插格式化的文本作为说明文字或笔记

  • Markdown基本语法:标题和缩进

    在这里插入图片描述

  • 效果如下图所示

在这里插入图片描述

总结

  • 了解Python做数据分析的优势

    • Python可以独立高效的完成数据分析相关的全部工作
  • 知道Python数据分析常用开源库

    • Pandas
    • Numpy
    • Matplotlib
    • Seaborn
    • sklearn
  • 会启动和使用jupyter notebook

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第一 二章 小车硬件介绍-(全网最详细)基于STM32智能小车-蓝牙遥控、避障、循迹、跟随、PID速度控制、视觉循迹、openmv与STM32通信、openmv图像处理、smt32f103c8t6

第一篇-STM32智能小车硬件介绍 后续章节也放这里 持续更新中,视频发布在小B站 里面。这边也会更新。 B站视频合集: STM32智能小车V3-STM32入门教程-openmv与STM32循迹小车-stm32f103c8t6-电赛 嵌入式学习 PID控制算法 编码器电机 跟随 小B站链接:https://www.bilib…

启航IT世界:高考后假期的科技探索之旅

随着高考的落幕,新世界的大门已经为你们敞开。这个假期,不仅是放松身心的时光,更是为即将到来的IT学习之旅打下坚实基础的黄金时期。以下是一份专为你们准备的IT专业入门预习指南,希望能助你们一臂之力。 一:筑基篇&a…

Bootstrap 缩略图

Bootstrap 缩略图 引言 Bootstrap 是一个流行的前端框架,它提供了一套丰富的组件和工具,帮助开发者快速构建响应式和移动优先的网页。缩略图(Thumbnails)是 Bootstrap 中的一种组件,用于展示图片或其他媒体内容,通常与标题和文本描述一起使用,形成一个整洁的布局。本文…

【FPGA】Verilog:全减器与半减器 | Full Subtractor | Half Subtractor

0x00 全减器(Full Subtractor) 减法器是用于减法运算的逻辑电路,与不包含借位的半减法器不同。 全减法器因为包含借位的产生与否,所以具备完整的减法功能。 输出由差 和借位 组成:

JUC基础学习

1.Java JUC简介 2.volatile关键字-内存可见性 3.原子变量-CAS算法 4.ConcurrentHashMap锁分段机制

C++学习/复习18----迭代器/反向迭代器及在list/vector中的应用、list与vector模拟实现复习

迭代器是一个对象,可以循环访问 C 标准库容器中的元素,并提供对各个元素的访问。 C 标准库容器全都提供迭代器,以便算法可以采用标准方式访问其元素,而不必考虑用于存储元素的容器类型。 一、反向迭代器类 基于普通迭代器构建反…

使用gitlab的CI/CD实现logseq笔记自动发布为单页应用

使用gitlab的CI/CD实现logseq笔记自动发布为单页应用 使用gitlab的CI/CD实现logseq笔记自动发布为单页应用如何实现将logseq的笔记发布成网站使用 logseq-publish-docker 实现手动发布使用gitlab的CI/CD实现自动发布过程中的问题及解决参考资料 使用gitlab的CI/CD实现logseq笔记…

第二届重庆国际渔业博览会

The 2th Chongqing International Fisheries & Seafood Expo 时间:2024年10月25-27日 地点:重庆国际博览中心 同期举办:第十六届中国(重庆)火锅美食文化节暨第九届中国(重庆)国际火锅产业博览会 展会规模: 展出…

(论文版)深度学习 | 基于 VGG16-UNet 语义分割模型的猫狗图像提取研究

Hi,大家好,我是半亩花海。本实验本项目基于 VGG16-UNet 架构,利用 Labelme 标注数据和迁移学习,构建高效准确的猫狗图像分割模型。通过编码器-解码器结构(特征提取-上采样)提升分割精度,适应不同…

VBA数据库解决方案第十二讲:如何判断数据库中数据表是否存在

《VBA数据库解决方案》教程(版权10090845)是我推出的第二套教程,目前已经是第二版修订了。这套教程定位于中级,是学完字典后的另一个专题讲解。数据库是数据处理的利器,教程中详细介绍了利用ADO连接ACCDB和EXCEL的方法…

第11章 规划过程组(11.6规划进度管理)

第11章 规划过程组(二)11.6规划进度管理,在第三版教材第385页;#软考中级##中级系统集成项目管理师# 文字图片音频方式 第一个知识点:主要输出 1、进度管理计划 准确度 定义活动持续时间估算的可接受区间&#xff0…

第二周:计算机网络概述(下)

一、计算机网络性能指标(速率、带宽、延迟) 1、速率 2、带宽 3、延迟/时延 前面讲分组交换的时候介绍了,有一种延迟叫“传输延迟”,即发送一个报文,从第一个分组的发送,到最后一个分组的发送完成的这段时…

医疗AI革命,为何多模态大模型难以突破?

在人工智能的浪潮中,多模态大模型以其强大的数据处理能力和深度学习算法,被寄予厚望于医疗影像分析、辅助诊断等领域。然而,现实情况却远非如此乐观。本文将带您深入了解多模态大模型在医疗辅助诊断领域的潜力与局限,揭示其面临的…

ue5导航网格设置

AI使用导航网格进行移动,所以,先设置导航网格边界体积 2,使导航网格边界体积覆盖AI所需要的场景(绿色区域),x,y,z在这里都扩大到原来的10倍 3,打开actor的“启用tick并开始” 4&…

MathType8.0最新官方免费版 功能强大的数学公式编辑器

MathType 是款功能强大的数学公式编辑器,可以让用户轻松地在各种文档中插入复杂的数学公式和符号。它支持手写输入公式,方便用户直接通过鼠标或触摸屏操作来创建公式。MathType 的符号丰富,几乎涵盖了所有数学、物理和化学等领域所需的符号。…

128陷阱详解

人不走空 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌赋:斯是陋室,惟吾德馨 目录 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌…

windows下启动redisSentinel

如果已经安装redis的就继续往下看&#xff0c;还没安装redis&#xff0c;先安装一下redis 安装完redis之后&#xff0c;打开redis的目录。 新建一个sentinel.conf文件 # 端口号 port 26379# Sentinel 监控的主节点信息&#xff0c;格式为 <master-name> <ip> &l…

球形气膜:现代娱乐场馆的最佳选择—轻空间

随着科技的发展和人们对高品质生活的追求&#xff0c;娱乐场馆的建设迎来了新的变革。球形气膜结构凭借其独特的优势&#xff0c;逐渐成为现代娱乐场馆建设的最佳选择。轻空间将介绍球形气膜的优势&#xff0c;并探讨其在不同应用场景中的广泛应用。 球形气膜的优势 1. 独特的建…

【Python实战因果推断】13_线性回归的不合理效果3

目录 Regression Theory Single Variable Linear Regression Multivariate Linear Regression Frisch-Waugh-Lovell Theorem and Orthogonalization Regression Theory 我不打算太深入地探讨线性回归是如何构建和估计的。不过&#xff0c;一点点理论知识将有助于解释线性回归…

【HarmonyOS NEXT】鸿蒙如何动态添加组件(NodeController)

NodeController用于实现自定义节点的创建、显示、更新等操作的管理&#xff0c;并负责将自定义节点挂载到NodeContainer上。 说明 本模块首批接口从API version 11开始支持 当前不支持在预览器中使用NodeController。 导入模块 import { NodeController } from "ohos…