python-numpy的一些简单函数--补充中

来源:互联网 发布:软件暴风影音下载 编辑:程序博客网 时间:2024/06/06 21:01

模块Numpy的主要对象是同种类型元素的多维数组。

在Numpy中维度(dimensions)叫做轴(axes) , 轴的个数叫做秩(rank)

  • ndarray.ndim

    数组轴的个数,在python的世界中,轴的个数被称作秩

  • ndarray.shape

    数组的维度。这是一个指示数组在每个维度上大小的整数元组。例如一个n排m列的矩阵,它的shape属性将是(2,3),这个元组的长度显然是秩,即维度或者ndim属性

  • ndarray.size

    数组元素的总个数,等于shape属性中元组元素的乘积。

  • ndarray.dtype

    一个用来描述数组中元素类型的对象,可以通过创造或指定dtype使用标准Python类型。另外NumPy提供它自己的数据类型。

  • ndarray.itemsize

    数组中每个元素的字节大小。例如,一个元素类型为float64的数组itemsiz属性值为8(=64/8),又如,一个元素类型为complex32的数组item属性为4(=32/8).

  • ndarray.data

    包含实际数组元素的缓冲区,通常我们不需要使用这个属性,因为我们总是通过索引来使用数组中的元素。

    >>> import numpy>>> from numpy import *>>> array1 = array([1,2,3,4])    #秩为1,轴的长度4>>> array1array([1, 2, 3, 4])>>> array1.shape(4,)>>> 


    sum函数:
    >>> array3 = arange(12).reshape(3,4)>>> array3array([[ 0,  1,  2,  3],       [ 4,  5,  6,  7],       [ 8,  9, 10, 11]])>>> array3.sum(axis = 0)            #每列元素相加array([12, 15, 18, 21])>>> array3.sum(axis = 1)            #每行元素相加array([ 6, 22, 38])>>> >>> array3.cumsum(axis = 0)         #每行逐渐相加array([[ 0,  1,  2,  3],       [ 4,  6,  8, 10],       [12, 15, 18, 21]])>>> array3.cumsum(axis = 1)         #每列逐渐相加array([[ 0,  1,  3,  6],       [ 4,  9, 15, 22],       [ 8, 17, 27, 38]])>>> 

    >>> array4 = arange(27).reshape(3,3,3)>>> array4array([[[ 0,  1,  2],        [ 3,  4,  5],        [ 6,  7,  8]],       [[ 9, 10, 11],        [12, 13, 14],        [15, 16, 17]],       [[18, 19, 20],        [21, 22, 23],        [24, 25, 26]]])>>> array4.sum(axis = 0)         #轴:行,列,高;高:对应元素相加array([[27, 30, 33],       [36, 39, 42],       [45, 48, 51]])>>> array4.sum(axis = 1)         #列:对应元素相加array([[ 9, 12, 15],       [36, 39, 42],       [63, 66, 69]])
    >>> array4.sum(axis = 2)          #行:对应元素相加array([[ 3, 12, 21],       [30, 39, 48],       [57, 66, 75]])>>>