NumPy中可以通过median函数计算中位数;通过var函数计算方差。方差是指各个数据与所有数据算术平均数的离差平方和除以数据个数所得到的值。
计算中位数和方差实例:
#NumPy常用函数:计算中位数和方差 from numpy import * #1,2,3,4,5 a = array([4,5,2,3,1]) print(median(a)) price=loadtxt('data.csv',delimiter=',',usecols=(6,),unpack=True) print(price) print(median(price)) #验证刚才求的中位数是否正确 #1、将数组进行排序 sorted = msort(price) print(sorted) #2、计算数组的元素个数 n = len(sorted) print(n) #print('middle', '=', sorted[n - 1]//2) #n为奇数 print('middle', '=', (sorted[n // 2] + sorted[(n - 1) // 2]) / 2) #n为偶数 #方差:假设数组元素的算数平均数是a,元素个数是n,x1、x2、x3...xn #((x1 - a)^2 + (x2 - a)^2 + (x3 - a)^2 ... + (xn - a)^2) / n print('方差:', var(price))
输出结果:
3.0 [ 336.1 339.32 345.03 344.32 343.44 346.5 351.88 355.2 358.16 354.54 356.85 359.18 359.9 363.13 358.3 350.56 338.61 342.62 342.88 348.16 353.21 349.31 352.12 359.56 360. 355.36 355.76 352.47 346.67 351.99] 352.055 [ 336.1 338.61 339.32 342.62 342.88 343.44 344.32 345.03 346.5 346.67 348.16 349.31 350.56 351.88 351.99 352.12 352.47 353.21 354.54 355.2 355.36 355.76 356.85 358.16 358.3 359.18 359.56 359.9 360. 363.13] 30 middle = 352.055 方差: 50.1265178889