使用Excel生成具有特定分布的随机数字
我想产生100个正态分布的随机数(μ= 10,σ= 7),然后绘制这些数字的数量图。
如何在Excel 2010中生成具有特定分布的随机数字?
还有一个问题:
例如,当我用RANDBETWEEN(Bottom,Top)
生成20个随机数时,每次重新计算纸张时数字都会改变。 我怎样才能防止这种情况发生?
与RAND()
一起使用NORMINV
函数:
=NORMINV(RAND(),10,7)
为了防止随机值发生变化,请select所有值,复制它们,然后将这些值粘贴(特殊)返回到相同的范围。
样本输出(列A),用此公式生成的500个数字:
正如@osknows在上面的评论中所说的(而不是我为什么要添加这个答案的答案),Analysis Pack具有随机数生成function来生成一组数字。 一个很好的总结链接在http://www.bettersolutions.com/excel/EUN147/YI231420881.htm 。
如果你有优秀的2007年,你可以使用
=NORMSINV(RAND())*SD+MEAN
因为2010年关于Excel的function发生了很大的变化
在维基百科关于随机数字的文章中谈到使用抽样技术时,要拿出一个赃物。 你可以通过插入这个方程来find正态分布的等式
(通过维基百科的方程式)
至于第二个问题,进入圆形办公室图标下的选项,去公式,并将计算更改为“手动”。 这将保持你的工作表,而不是每次重新计算公式。
关于重新计算:
您可以通过调整automatic recalculation
来保持每次进行调整时随机值的变化: manual recalculate
。 (重新)计算,然后只有当你按下F9完成。 或者转移F9。
看到这个链接(虽然对于比2013年更旧的Excel版本)有关它的一些信息: https : //support.office.com/en-us/article/Change-formula-recalculation-iteration-or-precision-73fc7dac- 91cf-4d36-86e8-67124f6bcce4 。
Rand()生成0到1之间随机数的均匀分布,但是norminv(或norm.inv)函数将均匀分布的Rand()作为input来生成正态分布的样本集。
生成的数字
=NORMINV(RAND(),10,7)
是均匀分布的。 如果你想要的数字是正态分布的,你将不得不写一个函数,我猜。