import numpy as np
a = np.arange(1,13).reshape(3,4)
print(a)
print(np.amin(a)) # 总体最小值 1
print(np.amin(a, axis=0)) # 每一列上的最小值
print(np.amin(a, axis=1)) # 每一行上的最小值
返回数组中最大值最小值的下标
b = np.array([(1,3,3,0),
(1,2,3,4),
(4,3,2,1)] )
print(np.argmin(b)) # 全体最小值, 如果不加axis参数的话, 会把参数数组展开成一维
print(np.argmin(b, axis=0)) # 每一列上最小值的下标
print(np.argmin(b, axis=1)) # 每一行上最小值的下标
计算数组中元素最大值与最小值的差
print(a, '\n')
print(np.ptp(a)) # 总体上 12 - 1 = 11
print(np.ptp(a, axis=0)) # 列方向上
print(np.ptp(a, axis=1)) # 行方向上
计算数组的中位数
a = np.array([[1,3,3,1], [4,5,6,10]])
print(a)
print(np.median(a)) # 数组的中位数
print(np.median(a, axis=0)) # 每一列的中位数
print(np.median(a, axis=1)) # 每一行的中位数
计算平均值
print(np.mean(a), a.mean())
print(np.median(a, axis=0)) # 每一列的平均值
print(np.median(a, axis=1)) # 每一行的平均值
计算数组的加权平均值
例如数组[1,2,3,4]各元素对于的权值为[4,3,2,1], 则其对应的加权平均值为:
加权平均值 = (1 x 4 + 2 x 3 + 3 x 2 + 4 x 1) / (4 + 3 + 2 + 1)
v = np.array([1,2,3,4])
w = np.array([4,3,2,1])
print(np.average(v)) # 不指定权值时, 相当于求平均值
print(np.average(v, weights=w))
v = np.arange(12).reshape(3,4)
print(v, '\n')
print(np.average(v, axis=1))
print(np.average(v, weights=w, axis=1)) #计算每行上的加权平均值
计算标准差
print(np.std(np.array([1,1,1,1])))
v = np.array([1,2,3,4])
print(np.std(v))
var = np.mean(((v - v.mean()) ** 2)) # 方差
print(var)
print(np.sqrt(var))
计算方差
print(np.var(np.array([1,1,1,1])))
print(np.var(np.array([1,2,3,4])))