ufunc的方法——python.numpy基础

2025-04-24 06:03:28

1、先构造一个三维数组:import numpy as npa = np.random.rand(3,3,5)

ufunc的方法——python.numpy基础

2、np.floor是一个ufunc函数,它是一个一元函数——取整函数,可以做用于a里面的每一个数字,且保持数组结构不变,仍旧是三维的3*3*5的数组:

ufunc的方法——python.numpy基础

3、类似的一元ufunc函数还有很多,比如所有的初等数学函数:print(np.sin(b),'\n',np.cos(b))

ufunc的方法——python.numpy基础

4、np.add是一个多元的ufu艘绒庳焰nc函数:b = np.add.reduce(a)这里,reduce的作用,是把add函数作用于剞麽苍足数组a的第一层每一个子数组,计算这些元素的和。具体的作用结果是:c = []for j in range(3): d = [] for i in range(5): #print(a[:,j,i],'\t',sum(a[:,j,i])) d.append(sum(a[:,j,i])) c.append(d)print(np.array(c))

ufunc的方法——python.numpy基础
ufunc的方法——python.numpy基础

5、b = np.add.reduce(a,axis = 1)这里指定了add作用于a的第二层子数组,具体如下:c = []for j in range(3): d 租涫疼迟= [] for i in range(5): #print(a[j,:,i],'\t',sum(a[j,:,i])) d.append(sum(a[j,:,i])) c.append(d)print(np.array(c))

ufunc的方法——python.numpy基础

6、b = np.add.reduce(a,axis = 2)将add函数作用于a的第三层子数组:print(sum(a[0,0]))

ufunc的方法——python.numpy基础

7、给出一个一维数组:import numpy as npa = np.floor(np.random.rand(6)*10)从左往右累计a里面的元素之和:b = np.add.accumulate(a)具体的类似于:c = 0d = []for i in range(6): c = c+a[i] d.append(c) print(np.array(d))

ufunc的方法——python.numpy基础

8、给出一维数组a:import numpy as npa = np.array(range(10))看看下面的函数:b = np.add.reduceat(a,indices=[5,2,0,3,1,3,6])

ufunc的方法——python.numpy基础

9、reduceat的作用比较特殊————缇吾怩舭——如果indices的第i个元素不是最后一个元素: 如果indic髫潋啜缅es的第i个元素比后一个元素(第i+1个元素)小,那么计算 np.add(a[indices[i]:indices[i+1]]) 并把计算结果返回给b[i]; 否则,把a[indices[i]]返回给b[i];反之,indices的第i个元素是最后一个元素: 把a[indices[i]:]返回给b[i]。

ufunc的方法——python.numpy基础

10、import numpy as npa = b = np.array(range(10))c = np.multiply(a,b)multiply把a和b的对应元素相乘,得到一个与a和b的结构相同的新数组;所以,a和b的结构必须一样;注意,当a或b的某一个数组只有一个元素,在multiply里面,会自动补全为与另一方相同结构的数组。

ufunc的方法——python.numpy基础
ufunc的方法——python.numpy基础

11、import numpy as npa = np.array(range(9))b = np.array(range(10))c = np.multiply.outer(a,b)c是a和b里面的元素的乘法表;这里a和b的结构不必完全相同,比较自由。

ufunc的方法——python.numpy基础

12、加法表:import numpy as npa = np.arra鲻戟缒男y(range(9))b = np.array(range(10))c = np.锾攒揉敫add.outer(a,b)幂方表:import numpy as npa = np.array(range(6))b = np.array(range(5))c = np.power.outer(a,b)其中,a里面的元素是底数,b里面的元素是指数。

ufunc的方法——python.numpy基础
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢