2020.7.20 Numpy 基础

发布于 2020-07-20  25 次阅读


1.学习内容

  • Matplotlib 常见图形绘制

    • 折线图 plt.plot 变化
    • 散点图 plt.scatter 分布规律
    • 柱状图 plt.bar() 统计对比
    • 直方图 plt.hist() 统计分布
    • 饼状图 plt.pie() 占比
  • numpy 科学计算库

    • numpy优势
      • 计算数组类的
      • 数组,矩阵操作,快速
      • numpy中使用ndarray对象
      • 处理数据效率很高
    • 使用np.array( 列表 )
  • ndarray的优势

    • 内存块风格

      • 一体式存储
    • ndarray 支持并行化运算(向量化运算)

      • 数组和数组之间的运算
    • ndarray 突破了GIL

      • 底层都是C语言编写
      • 千军万马过独木桥
    • 1.ndarray的属性

      • shape 数组维度元素(形状)
        • 行 列 (维度)
      • ndim 数组的维数
        • 二维数组
      • size 数组中元素的数量
        • 一共多少元素
      • itemsize 一个数组的长度
        • 一个元素的字节长度
      • dtype 数组元素的类型
        • int64 类型
    • 2.ndarray 的形状

      • 一维数组
      • 二维数组
      • 三位数组
    • 3.ndarray 类型

      • 名称 描述 简写
        np.bool 用一个字节存储的布尔类型(True或False) 'b'
        np.int8 一个字节大小,-128 至 127 'i'
        np.int16 整数,-32768 至 32767 'i2'
        np.int32 整数,-2^31 至 2^32 -1 'i4'
        np.int64 整数,-2^63 至 2^63 - 1 'i8'
        np.uint8 无符号整数,0 至 255 'u'
        np.uint16 无符号整数,0 至 65535 'u2'
        np.uint32 无符号整数,0 至 2^32 - 1 'u4'
        np.uint64 无符号整数,0 至 2^64 - 1 'u8'
        np.float16 半精度浮点数:16位,正负号1位,指数5位,精度10位 'f2'
        np.float32 单精度浮点数:32位,正负号1位,指数8位,精度23位 'f4'
        np.float64 双精度浮点数:64位,正负号1位,指数11位,精度52位 'f8'
        np.complex64 复数,分别用两个32位浮点数表示实部和虚部 'c8'
        np.complex128 复数,分别用两个64位浮点数表示实部和虚部 'c16'
        np.object_ python对象 'O'
        np.string_ 字符串 'S'
        np.unicode_ unicode类型 'U'
      • dtype 可以指定类型
        • int8 int16 ….
    • 4.ndarray 基本操作

      • 生成0,1数组的方法
        • np.ones([4,7]) 4行七列
        • np.ones_like() 通过谁生成
        • np.zeros()
        • np.zeros._like() 通过谁生成
      • asarray()和array()
        • asaary是浅拷贝
        • array是深拷贝
      • 生成固定范围的数组
        • np.linspace(start,stop,num,endpoint) 平均分布的数据
          • start 开始
          • stop结束
          • num 等间隔的样例(多少个数字)
          • endpoint 是否包含最后一个值
        • np.arange(start,stop.step,dtype)
          • 每间隔生成多少数字
        • np.logspace(start,stop,num)
          • 生成的数字,以10为指数,10的几次方
      • 生成随机数组

        • 使用模块
          • np.random 模块
        • 均匀分布
          • np.random.rand()
            • 返回 0.0 1.0 内的一组均匀分布的数
          • np.random.uniform(low,high,size)
            • 生成浮点数
            • low 下界
            • high 上界
            • size 行列(2,4)
          • np.random.randint(low,high,size)
            • 生成整数
    • 正态分布和均匀分布

2.扩展延伸知识

3.灵感代办

4.复习内容

5.学习成果&问题


Ares个人进阶之路