美文网首页
Numpy Ndarray 常用对象属性

Numpy Ndarray 常用对象属性

作者: ZhenKuanJiang | 来源:发表于2019-05-05 21:29 被阅读0次

    ndarray.ndim

    用于返回数组的维数,等于秩

    import numpy as np 
     
    a = np.arange(24)  
    print (a.ndim)             # a 现只有一个维度
    #输出
    1
    
    # 现在调整其大小
    b = a.reshape(2,4,3)  # b 现在拥有三个维度
    print (b.ndim)
    #输出
    3
    

    ndarray.shape

    表示数组的维度,返回一个元组,这个元组的长度就是维度的数目,即 ndim 属性(秩)。比如,一个二维数组,其维度表示"行数"和"列数",也可以用于调整数组大小

    import numpy as np  
     
    a = np.array([[1,2,3],[4,5,6]])  
    print (a.shape)
    #输出
    (2, 3)
    

    调整数组大小

    import numpy as np 
     
    a = np.array([[1,2,3],[4,5,6]]) 
    a.shape =  (3,2)  
    print (a)
    #输出
    [[1 2]
     [3 4]
     [5 6]]
    

    用 reshape 函数来调整数组大小

    import numpy as np 
     
    a = np.array([[1,2,3],[4,5,6]]) 
    b = a.reshape(3,2)  
    print (b)
    #输出
    [[1, 2] 
     [3, 4] 
     [5, 6]]
    

    ndarray.itemsize

    以字节的形式返回数组中每一个元素的大小

    import numpy as np 
     
    # 数组的 dtype 为 int8(一个字节)  
    x = np.array([1,2,3,4,5], dtype = np.int8)  
    print (x.itemsize)
     
    # 数组的 dtype 现在为 float64(八个字节) 
    y = np.array([1,2,3,4,5], dtype = np.float64)  
    print (y.itemsize)
    #输出
    1
    8
    

    ndarray.flags

    返回 ndarray 对象的内存信息,包含以下属性

    C_CONTIGUOUS (C)          #数据是在一个单一的C风格的连续段中
    F_CONTIGUOUS (F)          #数据是在一个单一的Fortran风格的连续段中
    OWNDATA (O)               #数组拥有它所使用的内存或从另一个对象中借用它
    WRITEABLE (W)             #数据区域可以被写入,将该值设置为 False,则数据为只读
    ALIGNED (A)               #数据和所有元素都适当地对齐到硬件上
    UPDATEIFCOPY (U)          #这个数组是其它数组的一个副本,当这个数组被释放时,原数组的内容将被更新
    
    import numpy as np 
     
    x = np.array([1,2,3,4,5])  
    print (x.flags)
    #输出
      C_CONTIGUOUS : True
      F_CONTIGUOUS : True
      OWNDATA : True
      WRITEABLE : True
      ALIGNED : True
      WRITEBACKIFCOPY : False
      UPDATEIFCOPY : False
    

    相关文章

      网友评论

          本文标题:Numpy Ndarray 常用对象属性

          本文链接:https://www.haomeiwen.com/subject/kaxsnqtx.html