random.gauss(mu, sigma)
上述函数可以随机从给定的平均值和方差的正态分布中绘制一个数字。但是,如何从定义由不止前两个矩定义的正态分布中绘制值呢?
例如:
random.gauss(mu, sigma, skew, kurtosis)
random.gauss(mu, sigma)
上述函数可以随机从给定的平均值和方差的正态分布中绘制一个数字。但是,如何从定义由不止前两个矩定义的正态分布中绘制值呢?
例如:
random.gauss(mu, sigma, skew, kurtosis)
使用scipy如何?您可以从scipy.stats库中的连续分布中选择所需的分布。
广义伽马函数具有非零偏斜度和峰度,但是您需要一些工作来确定要使用哪些参数来指定分布以获得特定的均值、方差、偏斜度和峰度。以下是一些代码,可帮助您入门。
import scipy.stats
import matplotlib.pyplot as plt
distribution = scipy.stats.norm(loc=100,scale=5)
sample = distribution.rvs(size=10000)
plt.hist(sample)
plt.show()
print distribution.stats('mvsk')
这显示了一个来自均值为100,方差为25的正态分布的一万个元素样本的直方图,并打印出该分布的统计信息:
(array(100.0), array(25.0), array(0.0), array(0.0))
用广义伽玛分布替代正态分布,
distribution = scipy.stats.gengamma(100, 70, loc=50, scale=10)
您可以获得统计量[均值、方差、偏度、峰度]
(array(60.67925117494595), array(0.00023388203873597746), array(-0.09588807605341435), array(-0.028177799805207737))
。
尝试使用以下内容:
给定1阶、2阶矩、偏度和Fisher(过量)峰度的列表,返回高斯扩展概率密度函数。
参数:mvsk:mu、mc2、skew、kurt的列表
看起来很不错。该页面上有源代码链接。
哦,这是另一个指向该页面的StackOverflow问题: Apply kurtosis to a distribution in python