第 8 课 数据分析初步

讲的是利用Python进行数据控制、处理、整理、分析等方面的具体细节和基本要点。

  • 为什么是 Python 用于数据分析?

    1. Python 成功的部分原因是其能轻松地集成和调用 C、C++、Fortran 代码。大部分现代计算软件利用了一些 Fortran和 C 库来实现线性代数、积分、快速傅里叶变换等算法。许多企业和国家实验室也利用 Python 粘合来已经用了30多年的遗留软件系统。
    2. Python 和自然语言相似,很多科研人员和程序员非常喜欢,因此产生了第3点👇。
    3. Python 有很多高效、实用的类库,并可以方便地建立网站、爬取数据、数据分析、进行机器学习。
  • 库以及 pip 软件管理

    • library (类、库)是什么
    import time
    from time import sleep
    • pip 类库管理

    • pip 文档地址:https://pypi.org/project/pip/

    • 更换数据源:清华源地址

      • 升级 pip 到最新的版本 (>=10.0.0) 后进行配置:
      pip install pip -U
      pip config set global.index-url https://mirrors.cloud.tencent.com/pypi/simple/
      pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
      # 阿里源
      pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
      # 腾讯源
      pip config set global.index-url http://mirrors.cloud.tencent.com/pypi/simple
      # 豆瓣源
      pip config set global.index-url http://pypi.douban.com/simple/
    • 如果您到 pip 默认源的网络连接较差,临时使用本镜像站来升级 pip:

      pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U
    • 安装

      python -m pip install SomePackage            # latest version
      python -m pip install SomePackage==1.0.4     # specific version
      python -m pip install 'SomePackage>=1.0.4'     # minimum version
      # -m 的含义表示将库当作脚本来执行。
      pip install SomePackage            # latest version
      pip install SomePackage==1.0.4     # specific version
      pip install 'SomePackage>=1.0.4'     # minimum version
      pip freeze > requirements.txt
      pip install -r requirements.txt
      pip list  #   list installed packages
    • 卸载

      python -m pip uninstall SomePackage
    • 更新

      pip install package_name --upgrade
    • 科学计算的常用类库:

    • NumPy 是以矩阵为基础的数值计算模块,提供高性能的数组对象。文档地址:http://www.numpy.org/

    • Pandas 是基于 NumPy 的一种工具,纳入了一些标准的数据模型,提供了处理数字图表和时序数据的数据结构和操作功能,常用于金融数据分析。文档地址:https://pandas.pydata.org/

    • Scipy 是基于 NumPy 的一种高级数据处理工具,提供最优化、回归、插值、线性代数模块、傅里叶变换、信号和图像处理,常微分方程求解器等功能。文档地址:http://www.scipy.org/

    • Matplotlib 是2D绘图工具,常用于可视化展示数据。文档地址:http://matplotlib.org/

    • 其他类库

    • seaborn 是基于 Matplotlib 的更加美观的绘图工具。文档地址:https://seaborn.pydata.org/

    • anaconda 是科学计算常用的环境管理工具,什么是环境?

  • NumPy 初步

    • Python 自带的数据类型性能低。

    • jupyter 文档地址 pip install jupyterlab

    • 数据类型:ndarray

    • 特点:数组里面每一个元素是相同类型。

    • 手动创建数组

      import numpy as np    # 推荐如此导入Numpy
      vec = np.array([0, 1, 2, 3])
      mat = np.array([[0, 1, 2], [3, 4, 5]])
      mat.ndim
      mat.shape
      mat.dtype
      len(mat)    
    • 函数创建数组

      a = np.arange(9)
      b = np.arange(2, 2, 2)
  • 指定长度的数组

      c = np.linspace(1, 6, 6) 
  • 特殊的数组

      np.ones((2, 2)) # tuple
      np.eye(3) #   单位矩阵
      np.diag(np.array([1, 2, 3, 4]))   #   对角阵
      np.random.rand(4) #   随机数组
    
      np.random.seed(0)  # 设定随机种子,保证实验的可重现
      x1 = np.random.randint(10, size=6)  # 一维数组
      x2 = np.random.randint(10, size=(3, 4))  # 二维数组
      x3 = np.random.randint(10, size=(3, 4, 5))  # 三维数组
  • 内置数据类型

    • 明确定义数组数据类型:(默认数据类型是浮点型)
        tmp = np.array([1, 2, 3], dtype=float)
    • 所有内置类型
        f = np.array([1+2j, 3+4j, 5+6*1j])  #   j为虚部
        f.dtype
        b = np.array([True, False, False, True])
        s = np.array(['Bonjour', 'Hello', 'Hallo',])
        # int32
        # int64
        # uint32
        # uint64
    • 更多内容在下节

课后作业

  • 安装 pip 环境,和那几个数据分析库并且运行上述代码。
订阅评论
提醒
guest
1 评论
最旧
最新 最多投票
内联反馈
查看所有评论
trackback

[…] | 博客 | […]