我想生成100个正态分布的随机数(µ=10,σ=7),然后为这些数字绘制一个数量图表。
如何在Excel 2010中生成具有特定分布的随机数?
还有一个问题:
例如,我使用RANDBETWEEN(最小值,最大值)
生成20个随机数,当工作表重新计算时,数字会发生变化。如何防止这种情况发生?
我想生成100个正态分布的随机数(µ=10,σ=7),然后为这些数字绘制一个数量图表。
如何在Excel 2010中生成具有特定分布的随机数?
还有一个问题:
例如,我使用RANDBETWEEN(最小值,最大值)
生成20个随机数,当工作表重新计算时,数字会发生变化。如何防止这种情况发生?
如果您有Excel 2007,您可以使用
=NORMSINV(RAND())*SD+MEAN
因为2010年Excel的函数有了重大变化。
正如@osknows在上面的评论中所说(而不是答案,这就是为什么我要添加这个),分析包包括随机数生成函数(例如NORM.DIST
,NORM.INV
)来生成一组数字。一个很好的摘要链接在http://www.bettersolutions.com/excel/EUN147/YI231420881.htm。
Rand()函数生成的随机数是在0到1之间均匀分布的,但norminv(或norm.inv)函数将这个均匀分布的随机数作为输入,生成符合正态分布的样本集。
关于重新计算:
你可以通过调整自动重新计算
为手动重新计算
,使得每次调整时随机值集合不会改变。此时只有在按下F9或Shift F9时才进行重新计算。
查看此链接(虽然是较旧的excel版本而非当前的2013年版)了解更多信息:https://support.office.com/en-us/article/Change-formula-recalculation-iteration-or-precision-73fc7dac-91cf-4d36-86e8-67124f6bcce4。
通过编程生成的数字
=NORMINV(RAND(),10,7)
是均匀分布的。如果你希望数字呈正态分布,你可能需要编写一个函数。