Python数据分析学习(一)_Numpy_数组

Python数据分析

Numpy

  1. numpy是什么

    • Numerical Python,是一个开源的Python科学计算库,使用Numpy可以方便的使用数组、矩阵进行计算,包含线性代数、傅里叶变换、随机数生成等大量函数
  2. 为什么使用Numpy

    • 对于同样的数值计算任务,使用Numpy比直接Python代码实现,优点有:
      • 代码更简洁
      • 性能更高效
    • Numpy是Python各种数据科学类库的基础库:
      • 比如:Scipy、Scikit-Learn、TensorFlow、pandas等
  3. Numpy ndarray 对象

    • Numpy定义了一个 n 维数组对象,简称 ndarray 对象,它是一个一系列相同类型元素组成的数组集合。数组中的每个元素都占有大小相同的内存块
    • ndarray 对象采用了数组的索引机制,将数组中的每个元素映射到内存块上,并且按照一定的布局对内存块进行排列(行或列)
  4. Numpy 创建数组

    • numpy.array

      numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)
      
    • 参数

      参数 描述说明
      object 表示一个数组 / 序列
      dtype 可选参数,通过它可以更改数组的数据类型
      copy 可选参数,当数据源是ndarray时,表示数组能否被复制,默认是True
      order 可选参数,以哪种内存布局创建数组,有3个可选值,分别是C(行序列) / F(列序列) / A(默认)
      ndmin 可选参数,用于指定数组的最小维度
      subok 可选参数,类型为bool值,默认False。为True,使用object的内部数据类型;False,使用数组的数据类型
    • numpy.arange()生成区间数组

      # 根据 start 与 stop 指定的范围以及 step 设定的步长,生成一个ndarray
      numpy.arange(start, stop, step, dtype)
      
    • 参数

      参数 描述说明
      start 起始值,默认为0
      stop 终止值(不包含)
      step 步长,默认为1
      dtype 返回ndarray的数据类型,如果没有提供,则会使用输入数据的类型
    • numpy.linspace()创建等差数列

      # 返回在间隔 [开始,停止] 上计算的 num 个均匀间隔的样本,数组是一个等差数列构成
      np.linspace(start, stop, num = 50, endpoint = True, retstep = False, dtype = None)
      
    • 参数

      参数 描述说明
      start 必填项,序列的起始值
      stop 必填项,序列的终止值,如果endpoint为True,该值包含于数列中
      num 要生成的等步长的样本数量,默认为50
      endpoint 该值为True时,数列中包含stop值,反之不包含,默认为True
      retstep 如果为True时,生成的数组中会显示间距,反之不显示
      dtype ndarray的数据类型
    • numpy.logspace()创建等比数列

      # 返回在间隔 [开始,停止] 上计算的num个均匀间隔的样本,数组是一个等比数列构成
      np.logspace(start, stop, num = 50, endpoint = True, base = 10.0, dtype = None)
      
    • 参数

      参数 描述说明
      start 必填项,序列的起始值
      stop 必填项,序列的终止值,如果endpoint为True,该值包含于数列中
      num 要生成的等步长的样本数量,默认是50
      endpoint 该值为True时,数列中包含stop值,反之不包含,默认为True
      base 对数log的底数
      dtype ndarray的数据类型
    • np.logspace(A, B, C, base = D)
      
      • A:生成数组的起始值为D的A次方
      • B:生成数组的结束值为D的B次方
      • C:总共生成C个数
      • D:指数型数组的底数为D,当省略base = D时,默认底数为10
    • 全0数列

      # 创建指定大小的数组,数组元素以0来填充
      numpy.zeros(shape, dtype = float, order = 'C')
      # zeros_like 返回具有与给定数组相同的形状和类型的零数组
      np.zeros_like(ar1)
      
    • 参数

      参数 描述说明
      shape 数组形状
      dtype 数据类型,可选
    • 全1数列

      # 创建指定大小的数组,数组元素以1来填充
      numpy.ones(shape, dtype = float, order = 'C')
      
  5. Numpy数组属性

    • Numpy的数组中比较重要ndarray对象属性有:

      属性 说明
      ndarray.ndim 秩,即轴的数量或维度的数量
      ndarray.shape 数组的维度,对于矩阵,n行m列
      ndarray.size 数组元素的总个数,相当于 .shape 中 n*m 的值
      ndarray.dtype ndarray对象的元素类型
      ndarray.itemsize ndarray对象中每个元素的大小,以字节为单位
    • ndarray.shape

      • 返回一个包含数组维度的元组,对于矩阵,n行m列,它也可以用于调整数组维度
    • 调整维度reshape

      • 返回调整维度后的副本,而不改变原ndarray
    • 调整维度resize

      numpy.resize(a, new_shape)
      
      • 如果新数组大于原始数组,则新数组将填充a的重复副本
      • 此行为与 a.resize(new_shape, refcheck = False) 不同,后者用零而不是重复的a填充
    • ndarray.ndim

      • 返回数组的维度(秩):轴的数量,或者维度的数量,是一个标量,一维数组的秩为1,二维数组的秩为2
    • 强制转换 astype()

      • numpy数据类型转换,调用astype返回数据类型修改后的数据,但是源数据的类型不会变
  6. 复习

    jy3Xy8.png

    jyfEPs.png

猜你喜欢

转载自blog.csdn.net/CBB_FT/article/details/125722081