机器学习入门(一)numpy

  1. 注 : np表示numpy的简写, np.xxx()表示类方法, ndarray.xxx()表示通过对象调用方法

  2. 创建ndarray

    1. 使用np.array()创建

      • 一维数组创建

        np.array([1,2,3,4,5])
      • 二维数组创建

        np.array([[1,2,3],[4,5,6]])

        注 : numpy默认所有的数据类型一致, 优先级str>float>int

  3. 使用np的routines函数创建

    1. 创建等差数列

      #方式1
      np.linespace(1,100,num=10)
      #方式2
      np.arange(0,100,2)
    2. 返回随机数组

      np.random.randint(0,100,size=(4,5))
      #如果在调用前固定随机因子np.random.seed(xx),则每次运行产生的随机数都是一样的
      np.random.random(size=(5,3))#返回0到1之间的随机数组
  4. ndarray的属性

    ndim : 维度 shape : 形状 size : 总长度 dtype : 元素类型

  5. ndarray的基本操作

    1. 索引
      一维与列表完全一致 多维时同理

      arr[1]
      arr[1][2]
    2. 切片

      一维与列表完全一致 多维时同理

      #获取二维数组的前两行
      arr[0:2]
      #获取二维数组的前两列
      arr[:,0:2]
      #数组列倒序
      arr[:,::-1]
    3. 变形
      使用arr.reshape()函数, 参数是一个tuple

      1. 多维变一维
      # arr.shape是(6,8)
      arr.reshape((48,-1)) #-1系统能自动算出来
      #arr.reshape((48,))和arr.reshape((48,1))的区别,前者是一维数组,后者是二维数组
    4. 级联
      np.concatenate()

      np.concatenate((arr1,arr2),axis=?)#0表示列方向,1表示行方向,默认是0. 三维数组才有axis=2

      注 : 形状相符才能级联, 至少需要行数或列数有一个相同

  6. 聚合操作

    1. 求和np.sum
    2. 求平均值np.mean
    3. ......
  7. ndarray的排序

    np.sort()不改变输入

    ndarray.sort()本地处理, 不占用空间, 但改变输入

    #对每一行进行排序
    arr.sort(axis=1)

猜你喜欢

转载自www.cnblogs.com/yimeisuren/p/12421768.html
今日推荐