zoukankan      html  css  js  c++  java
  • 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)
      
  • 相关阅读:
    cad 创建自定义菜单
    标准C++的类型转换符
    Assert usages
    c++排序算法与模板和STL_zhuan
    C++ 中int,char,string,CString类型转换
    C++ 之 C style string
    数据库优化细节——转
    C++容器——zhuan
    公共类库_address:http://www.cnblogs.com/wuhuacong/archive/2012/03/26/2418786.html
    C++学习篇——C++ STL中迭代器介绍(收集)
  • 原文地址:https://www.cnblogs.com/yimeisuren/p/12421768.html
Copyright © 2011-2022 走看看