use*_*208 7 python numpy probability
我有两个数组.x是独立变量,count是x发生的计数数,如直方图.我知道我可以通过定义一个函数来计算平均值:
def mean(x,counts):
return np.sum(x*counts) / np.sum(counts)
Run Code Online (Sandbox Code Playgroud)
是否有一般功能可以用来计算x和计数定义的分布中的每个时刻?我还想计算方差.
你可以使用来自的moment功能scipy.它计算数据的第n个中心矩.
您还可以定义自己的函数,它可能看起来像这样:
def nmoment(x, counts, c, n):
return np.sum(counts*(x-c)**n) / np.sum(counts)
Run Code Online (Sandbox Code Playgroud)
在该函数中,c意味着是采取时刻的点,n是顺序.所以要获得你可以做的差异nmoment(x, counts, np.average(x, weights=counts), 2).