1 python数据分析numpy基础之var求数组方差
在一组数据中,每个数据与这组数据的平均数的差的平方的平均数,称为方差(variance)。
python的numpy库的var()函数,用于计算沿指定轴(一个轴或多个轴)的方差。
用法
numpy.var(a, axis=None, dtype=None, out=None, ddof=0, keepdims=<no value>, *, where=<no value>, mean=<no value>)
描述
返回数组元素的方差,axis送值则返回指定一个或多个轴的方差,若未给值,则返回数组全部元素的方差。
入参
a:必选,array_like,需要计算标准差的数字数组、或列表、或元组。
axis:可选,整数或整数元组,表示需要计算标准差的一个或多个轴。
1.1 入参a
numpy.var()的入参a,为必选入参,可以为数组、列表、元组。如果a长度为0,则返回nan。表示需要求方差的数组、列表、元组。
>>> import numpy as np
# 入参a为列表
>>> np.var([50,100,100,35,50])
756.0
# 入参a为元组
>>> np.var((65,66,67,68,69))
2.0
# 入参a为数组
>>> np.var(np.array((65,66,67,68,69)))
2.0
# 入参a的长度为0,则返回nan,并且第1次报错,之后不报错
>>> np.var([])
Warning (from warnings module):
File "D:\python39\lib\site-packages\numpy\core\fromnumeric.py", line 3787
return _methods._var(a, axis=axis, dtype=dtype, out=out, ddof=ddof,
RuntimeWarning: Degrees of freedom <= 0 for slice
Warning (from warnings module):
File "D:\python39\lib\site-packages\numpy\core\_methods.py", line 163
arrmean = um.true_divide(arrmean, div, out=arrmean,
RuntimeWarning: invalid value encountered in divide
Warning (from warnings module):
File "D:\python39\lib\site-packages\numpy\core\_methods.py", line 198
ret = ret.dtype.type(ret / rcount)
RuntimeWarning: invalid value encountered in scalar divide
nan
>>> np.var([])
nan