用Python计算原始时刻

用Python计算原始时刻,python,numpy,scipy,Python,Numpy,Scipy,我想计算数据点列表的前4个原始矩,例如my_list=[34.0,35.0,39.0,43.0,46.5,48.5,50.0,51.5,52.5] 我知道,但似乎它只计算中心时刻: scipy.stats.moment(a,moment=1,axis=0,nan_policy='propagate') 计算样本平均值的第n个矩 力矩是对一组点的形状的一种特定的定量度量。由于它与偏度系数和峰度系数有着密切的关系,因此常被用来计算偏度系数和峰度系数 我还注意到有一些函数用于偏度或方差: from s

我想计算数据点列表的前4个原始矩,例如
my_list=[34.0,35.0,39.0,43.0,46.5,48.5,50.0,51.5,52.5]

我知道,但似乎它只计算中心时刻:

scipy.stats.moment(a,moment=1,axis=0,nan_policy='propagate')

计算样本平均值的第n个矩

力矩是对一组点的形状的一种特定的定量度量。由于它与偏度系数和峰度系数有着密切的关系,因此常被用来计算偏度系数和峰度系数

我还注意到有一些函数用于偏度或方差:

from scipy.stats import variation, skew
my_list = [34.0, 35.0, 39.0, 43.0, 46.5, 48.5, 50.0, 51.5, 52.5]

print(np.var(my_list))
print(variation(my_list))

print(skew(my_list))

>>> 44.0246913580247
>>> 0.14928998626833617
>>> -0.39001327934054053
但是正如您所看到的,
numpy
scipy
返回的结果非常不同


这些方法之间的区别是什么?找到前4个原始矩(均值、方差、偏度、峰度)的最有效方法是什么?

使用
scipy.stats.descripe()

>x=[34.0,35.0,39.0,43.0,46.5,48.5,50.0,51.5,52.5]
>>>矩=scipy.stats.description(x)
>>>我的意思是
44.44444444444444
>>>方差
49.527777777777786
>>>偏斜度
-0.39001327934054053
>>>峰度
-1.3564638918570706

scipy.stats.variation
返回变异系数,而不是方差