苏州做网站找哪家好,网站域名查询,多语种网站建设方案,微信文章wordpress1 python数据分析numpy基础之mean用法和示例
python的numpy库的mean()函数#xff0c;用于计算沿指定轴(一个轴或多个轴)的算术平均值。
用法
numpy.mean(a, axisNone, dtypeNone, outNone, keepdimsno value, *, whereno value)描述
返回数组元素的平均值…1 python数据分析numpy基础之mean用法和示例
python的numpy库的mean()函数用于计算沿指定轴(一个轴或多个轴)的算术平均值。
用法
numpy.mean(a, axisNone, dtypeNone, outNone, keepdimsno value, *, whereno value)描述
返回数组元素的平均值。长度为0的数组的mean为nan。
等效于对指定轴求后然后除以轴大小即为其平均值。
入参
a必选array_like数组或列表或元组表示需要计算平均数的元素的数组。
axis可选默认为None整数或整数元组表示需要计算平均值的一个或多个轴。
1.1 入参a
numpy.mean()的入参a为必选入参可以为数组、列表、元组。如果a长度为0则返回NaN。表示需要求平均值的数组。 import numpy as np
# 入参a为列表np.mean([1,2,3,4,5])
3.0
# 入参a为元组np.mean((1,2,3,4,5))
3.0
# 入参a为数组np.mean(np.array([1,2,3,4,5]))
3.0
# 入参a的长度为0返回NaN并且第1次报错后面不再报错np.mean(np.array([]))
Warning (from warnings module):File D:\python3\lib\site-packages\numpy\core\fromnumeric.py, line 3441outout, **kwargs)
RuntimeWarning: Mean of empty slice.Warning (from warnings module):File D:\python3\lib\site-packages\numpy\core\_methods.py, line 189ret ret.dtype.type(ret / rcount)
RuntimeWarning: invalid value encountered in double_scalars
nannp.mean(np.array([]))
nan1.2 入参axis为整数
numpy.mean()的入参axis为可选入参默认为None表示求全部元素的平均值。
若axisn为整数则对指定轴n的元素求平均值即先对同轴同方向的元素求和再除以同轴同方向的元素个数(轴大小)即为其平均值。
若axis负数则-1对应最后一个轴-2倒数第2个轴依此类推。 import numpy as np
# 创建一个三维数组大小为(2,3,4)ar3np.arange(24).reshape(2,3,4)ar3
array([[[ 0, 1, 2, 3],[ 4, 5, 6, 7],[ 8, 9, 10, 11]],[[12, 13, 14, 15],[16, 17, 18, 19],[20, 21, 22, 23]]])
# 入参 axis默认为None求全部元素的平均值np.mean(ar3)
11.5
# axis整数同轴同方向求和再除以轴大小
# axis0先对0轴求和再除以2np.mean(ar3,axis0)
array([[ 6., 7., 8., 9.],[10., 11., 12., 13.],[14., 15., 16., 17.]])
# np.mean(ar3,axis0)np.sum(ar3,axis0)/2np.sum(ar3,axis0)/2
array([[ 6., 7., 8., 9.],[10., 11., 12., 13.],[14., 15., 16., 17.]])
# axis1先对1轴求和再除以3np.mean(ar3,axis1)
array([[ 4., 5., 6., 7.],[16., 17., 18., 19.]])
# np.mean(ar3,axis1)np.sum(ar3,axis1)/3np.sum(ar3,axis1)/3
array([[ 4., 5., 6., 7.],[16., 17., 18., 19.]])
# axis2先对2轴求和再除以4np.mean(ar3,axis2)
array([[ 1.5, 5.5, 9.5],[13.5, 17.5, 21.5]])
# np.mean(ar3,axis2)np.sum(ar3,axis2)/4np.sum(ar3,axis2)/4
array([[ 1.5, 5.5, 9.5],[13.5, 17.5, 21.5]])
# axis负数则-1对应最后一个轴-2倒数第2个轴依此类推 np.mean(ar3,axis-1)
array([[ 1.5, 5.5, 9.5],[13.5, 17.5, 21.5]])1.3 入参axis为元组
numpy.mean()的入参axis若为轴的元组则对多个轴求平均值。
先对多个轴的元素求和再除以多个轴的大小的乘积即为其平均值。
axis(m,n)等效于axis(n,m)。 import numpy as np
# 创建一个三维数组大小为(2,3,4)ar3np.arange(24).reshape(2,3,4)ar3
array([[[ 0, 1, 2, 3],[ 4, 5, 6, 7],[ 8, 9, 10, 11]],[[12, 13, 14, 15],[16, 17, 18, 19],[20, 21, 22, 23]]])
# axis元组对多个轴求和再除以多个轴大小的乘积
# axis(0,1)先对0和1轴求和再除以662*3np.mean(ar3,axis(0,1))
array([10., 11., 12., 13.])np.sum(ar3,axis(0,1))/6
array([10., 11., 12., 13.])
# axis(1,0)等效于axis(0,1)np.mean(ar3,axis(1,0))
array([10., 11., 12., 13.])
# axis(0,1)先对0和2轴求和再除以882*4np.mean(ar3,axis(0,2))
array([ 7.5, 11.5, 15.5])np.sum(ar3,axis(0,2))/8
array([ 7.5, 11.5, 15.5
# axis(1,2)先对1和2轴求和再除以12123*4np.mean(ar3,axis(1,2))
array([ 5.5, 17.5])np.sum(ar3,axis(1,2))/12
array([ 5.5, 17.5])