python学习之数组二

发布时间:2019-05-21 21:23:37编辑:auto阅读(1922)

    作用于数组的函数:

    通用函数:函数基于元素的,以单元方式作用于数组的,返回的是与原数组具有相同形状的数组。

    不通用函数(数组函数):函数能以行或者列的方式作用于整个矩阵;如果没有提供任何参数时,它们将作用于整个矩阵。例如:maxsummin等函数

    例如:A=array([[1,2,3,4],[5,6,7,8]])

    print(sum(A))    #返回36,即没任何参数对整个矩阵相加求和

    a=sum(A,axis=0)

    print(a)     #计算列上的总和,返回[6, 8, 10 ,12]  其中,axis=0表示沿着第一个轴(轴0)来计算总和

    b=sum(A,axis=1)    #axis=1,表示沿着轴1(行)来计算矩阵的和.返回结果为向量[1026]

    print(b)

    注意如果函数使用了不通用的函数,那么在尝试将它们应用于数组时,可能得到标量的结果,甚至发生错误。  例如:

     

    def heaviside(x):

        if x>0:

            return 1.

        else:

            return 0.

    print(heavisidearray([-1,2]))       #返回结果错误

    若改为vheaviside=vectorize(heaviside)    

    print(vheaviside(array([-1,2])))   #返回向量[0,1]   

    注意:若不通用的函数使用数组作为输入时,函数会发生异常。Numpy包的函数vectorize能够解决这个问题。

     

关键字