numpy 用法记录

1.numpy.mean() 

mean()函数功能:求取均值
经常操作的参数为axis,以m * n矩阵举例:

  • axis 不设置值,对 m*n 个数求均值,返回一个实数
  • axis = 0:压缩行,对各列求均值,返回 1* n 矩阵
  • axis =1 :压缩列,对各行求均值,返回 m *1 矩阵
import numpy as np
a = np.array([[1, 2], [3, 4]])
print(a)
print(type(a))
print(np.mean(a))
print(np.mean(a, axis=0)) # axis=0,计算每一列的均值
print(np.mean(a, axis=1)) # axis = 1计算每一行的均值

output:

[[1 2]
 [3 4]]
<class 'numpy.ndarray'>
2.5
[2. 3.]
[1.5 3.5]

2. numpy.std()

这个函数是用来求标准差的。axis=0时,表示求每一列标准差,axis=1时,表示求每一行标准差,当axis=None时,表示求全局标准差。

其次numpy计算的为总体标准偏差,即当ddof=0时,计算有偏样本标准差;一般在拥有所有数据的情况下,计算所有数据的标准差时使用,即最终除以n。

当ddo = 1时,表示计算无偏样本标准差,最终除以n-1

import numpy as np
a = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
pian = np.std(a, ddof = 0) # 有偏
print("std有偏计算结果:",pian)
orig = np.sqrt(((a - np.mean(a)) ** 2).sum() / a.size)
print("有偏公式计算结果:",orig)
no_pian = np.std(a, ddof = 1) # 无偏
print("std无偏计算结果:",no_pian)
orig1 = np.sqrt(((a - np.mean(a)) ** 2).sum() / (a.size - 1))
print("无偏公式计算结果:",orig1)

output:

std有偏计算结果: 2.8722813232690143
有偏公式计算结果: 2.8722813232690143
std无偏计算结果: 3.0276503540974917
无偏公式计算结果: 3.0276503540974917

3.numpy.average()

求取平局值,可以对每个值添加权重

考虑数组[1,2,3,4]和相应的权重[4,3,2,1],通过将相应元素的乘积相加,并将和除以权重的和,来计算加权平均值。

加权平均值 = (1*4+2*3+3*2+4*1)/(4+3+2+1) 

具体代码

import numpy as np 
a = np.array([1,2,3,4])  
print (np.average(a))
wts = np.array([4,3,2,1])  
print (np.average(a,weights = wts))

结果如下

2.5
2.0

 

4. numpy.var()

求取方差

5.numpy.percentile()

百分位数是统计中使用的度量,表示小于这个值的观察值的百分比。

6.numpy.median()

numpy.median() 函数用于计算数组 a 中元素的中位数(中值)

上一篇:python实验


下一篇:数据可视化之MATPLOTLIB实战:PLT.POLAR()函数 绘制极线图 (转载)