Python中的 numpy.var()
numpy.var(arr, axis = None)
:计算给定数据(数组元素)沿指定轴(如果有)的方差。
例子 :
x = 1 1 1 1 1
Standard Deviation = 0 . Variance = 0
y = 9, 2, 5, 4, 12, 7, 8, 11, 9, 3, 7, 4, 12, 5, 4, 10, 9, 6, 9, 4
Step 1 : Mean of distribution 4 = 7
Step 2 : Summation of (x – x.mean())**2 = 178
Step 3 : Finding Mean = 178 /20 = 8.9
This Result is Variance.
参数 :
arr : [array_like] input array.
axis : [int or tuples of int] axis along which we want to calculate the variance. Otherwise, it will consider arr
to be flattened (works on all the axis). axis = 0 means variance along the column and axis = 1 means variance along the row.
out : [ndarray, optional] Different array in which we want to place the result. The array must have the same dimensions as expected output.
dtype : [data-type, optional] Type we desire while computing variance.
Results : Variance of the array (a scalar value if axis is none) or array with variance values along specified axis.
代码#1:
# Python Program illustrating
# numpy.var() method
import numpy as np
# 1D array
arr = [20, 2, 7, 1, 34]
print("arr : ", arr)
print("var of arr : ", np.var(arr))
print("\nvar of arr : ", np.var(arr, dtype = np.float32))
print("\nvar of arr : ", np.var(arr, dtype = np.float64))
输出 :
arr : [20, 2, 7, 1, 34]
var of arr : 158.16
var of arr : 158.16
var of arr : 158.16
代码#2:
# Python Program illustrating
# numpy.var() method
import numpy as np
# 2D array
arr = [[2, 2, 2, 2, 2],
[15, 6, 27, 8, 2],
[23, 2, 54, 1, 2, ],
[11, 44, 34, 7, 2]]
# var of the flattened array
print("\nvar of arr, axis = None : ", np.var(arr))
# var along the axis = 0
print("\nvar of arr, axis = 0 : ", np.var(arr, axis = 0))
# var along the axis = 1
print("\nvar of arr, axis = 1 : ", np.var(arr, axis = 1))
输出 :
var of arr, axis = None : 236.14000000000004
var of arr, axis = 0 : [ 57.1875 312.75 345.6875 9.25 0. ]
var of arr, axis = 1 : [ 0. 77.04 421.84 269.04]