欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python学习之数组二

程序员文章站 2022-10-06 11:37:19
作用于数组的函数: 通用函数:函数基于元素的,以单元方式作用于数组的,返回的是与原数组具有相同形状的数组。 不通用函数(数组函数):函数能以行或者列的方式作用于整个矩阵;如果没有提供任何参数时,它们将作用于整个矩阵。例如:max、sum和min等函数 例如:A=array([[1,2,3,4],[5 ......

作用于数组的函数:

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

不通用函数(数组函数):函数能以行或者列的方式作用于整个矩阵;如果没有提供任何参数时,它们将作用于整个矩阵。例如: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能够解决这个问题。