赞
踩
本篇主要介绍numpy中的数组操作:
1.多维数组的一元操作
2.组合数组
3.数组分割
4.数组复制
1.多维数组的一元操作
sum min max amax amin mean add multiply
np.abs(a) np.fabs(a) : 取各元素的绝对值
np.sign(a) : 计算各元素的符号值 1(+),0,-1(-)
np.sqrt(a) : 计算各元素的平方根
np.square(a): 计算各元素的平方
np.log(a) np.log10(a) np.log2(a) : 计算各元素的自然对数、10、2为底的对数np.exp(a) : 计算各元素的指数值
np.ceil(a) np.floor(a) : 计算各元素的ceiling 值, floor值(ceiling向上取整,floor向下取整)
np.rint(a) : 各元素 四舍五入
np.modf(a) : 将数组各元素的小数和整数部分以两个独立数组形式返回
sum
语法格式:
数组名称.sum(axis=某维)
其余维不变,对指定维求和,指定维消失。
不指定维数,表示对数组所有元素求和。
二维数组较好理解,如
b = np.arange(12).reshape(3,4)
b维度(3,4)
axis=0,在第一维度上求和,即按列求和,在行上压缩数据
axis=1,在第二维度上求和,即按行求和,在列上压缩数据
如:
- b = np.arange(12).reshape(3,4)
- '''
- array([[ 0, 1, 2, 3],
- [ 4, 5, 6, 7],
- [ 8, 9, 10, 11]])
- '''
- b.sum(axis=0) # 按列求和
- '''
- array([12, 15, 18, 21])
- '''
- b.sum(axis=1) # 按行求和
- '''
- array([ 6, 22, 38])
- '''
-
- b=np.arange(24).reshape(2,3,4)
- b
- '''
- array([[[ 0, 1, 2, 3],
- [ 4, 5, 6, 7],
- [ 8, 9, 10, 11]],
-
- [[12, 13, 14, 15],
- [16, 17, 18, 19],
- [20, 21, 22, 23]]])
- '''
- b.sum(axis=0)
- '''
- array([[12, 14, 16, 18],
- [20, 22, 24, 26],
- [28, 30, 32, 34]])
- '''
- #(2,3,4)变为(3,4) 下标2的维消失,可以想象成数据压缩到了指定维上
-
- b.sum(axis=1)
- '''
- array([[12, 15, 18, 21],
- [48, 51, 54, 57]])
- '''
- #(2,3,4)变为(2,4)
-
- b.sum(axis=2)
- '''
- array([[ 6, 22, 38],
- [54, 70, 86]])
- '''
- #(2,3,4)变为(2,3)
b.sum(axis=0) 等同与 b[0,:,:]+b[1,:,:]
b.sum(axis=1) 等同与 b[:,0,:]+b[:,1,:]+b[:,2,:]
b.sum(axis=2) 等同与 b[:,:,0]+b[:,:,1]+b[:,:,2]+b[:,:,3]
min、max、amin、amax
语法格式:
数组名称.min(axis=某维)
同
numpy.amin(数组名称,axis=某维
指定维度下,其他维最小值
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。