微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何从前四个矩均值、标准差、偏度和峰度中提取 johnsonsu.rvs() 分布的 a、b?

如何解决如何从前四个矩均值、标准差、偏度和峰度中提取 johnsonsu.rvs() 分布的 a、b?

让我们看看我有一个代码,其中:

mu=0 # first moment
rms=3 # second moment
skew=1 # third moment - skewness
kurt=3 # fourth moment - kurtosis

问题是我想使用这些参数作为输入并从中提取一些 a,b 来提供我的 johnsonsu.rvs(a=?,b=?,loc=mu,scale=rms,size=[N,N])。我知道有一种方法可以从 ab 推导出时刻,但是有什么方法可以做相反的事情吗? (可能这只是简单的数学运算,但我无法理解)。

我正在将 MATLAB 代码转换为 python,其中 johnsonsu 等分布是从前四个时刻派生的,因此没有其他方法可以做到这一点。

解决方法

我已经移植了 MATLAB 代码来从时刻估计约翰逊分布参数

https://www.mathworks.com/matlabcentral/fileexchange/46123-johnson-curve-toolbox

到 Python

https://github.com/maxdevblock/j_johnson_M

用法

from j_johnson_M import f_johnson_M

coef,j_type,err = f_johnson_M(mu,sd,skew,kurt)

gamma,delta,xi,lam = coef

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。