[例如,如果我想要一组平均值为10且标准差为5的数据,则可以使用此公式以正态分布进行计算:
NORMINV(RAND(), Mean, Stdev)
NORMINV(RAND(), 10, 5)
[这会导致数字介于大约-5到25之间,并且频率分布看起来很正常,大多数值都集中在平均值附近。
[如何获得一组相似的数字,但使它们服从对数正态分布,其中较大的数字更有可能出现,而没有低于零的可能性呢?
我想使用不带插件的Excel来做到这一点。
我尝试过:
LOGINV(RAND(), Mean, Stdev)
LOGINV(RAND(), 10, 5)
..但这会产生非常大的数字(以20的幂为单位,等等),看起来毫无意义。
对数正态是e ^ N(m,s)。因此,将您的构造用于正常情况,答案将是
=EXP( NORMINV(RAND(),Mean,Stdev) )
然而,这将为您带来非常大的价值。下一步是缩放平均值和标准偏差。用伪代码,
scaled mean = ln( m^2 / sqrt( m^2 + s^2 ))
scaled sd = sqrt( ln(( m^2 + s^2 ) / m^2 ))