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

系列文章目录

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

文章目录

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

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

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

3.2 生成Jupyter配置文件并配置

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

    sh 复制代码
    jupyter notebook --generate-config
  • 打开jupyter_notebook_config.py配置文件, 在最后添加以下内容即可

    sh 复制代码
    # 打开文件
    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 命令启动

    sh 复制代码
    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

相关推荐
掘根2 分钟前
【Qt】绘图
开发语言·qt
咖啡续命又一天22 分钟前
python 自动化采集 ChromeDriver 安装
开发语言·python·自动化
huohaiyu1 小时前
synchronized (Java)
java·开发语言·安全·synchronized
_OP_CHEN1 小时前
C++基础:(九)string类的使用与模拟实现
开发语言·c++·stl·string·string类·c++容器·stl模拟实现
蓝天智能1 小时前
QT MVC中View的特点及使用注意事项
开发语言·qt·mvc
松果集1 小时前
【1】数据类型2
python
且慢.5892 小时前
命令行的学习使用技巧
python
木觞清2 小时前
喜马拉雅音频链接逆向实战
开发语言·前端·javascript
海琴烟Sunshine2 小时前
leetcode 66.加一 python
python·算法·leetcode
wuxuanok2 小时前
苍穹外卖 —— 公共字段填充
java·开发语言·spring boot·spring·mybatis