如何使用 Excel 在正态分布内生成随机数
How to generate random numbers within a normal distribution using Excel
我想使用 Excel 中的 RAND() 函数生成一个介于 0 和 1 之间的随机数。
但是,我希望 80% 的值落在 0 和 0.2 之间,90% 的值落在 0 和 0.3 之间,95% 的值落在 0 和 0.5 之间,等等。
这让我想起了我曾经上过一门应用统计学课程,但并没有真正了解课程中的内容...
使用 Excel 公式实现此结果的最佳方法是什么?或者,这种统计计算称为什么/我可以 Google 围绕的任何其他指针。
=================
用例:
我有一列仪表读数,我想将其复制 7 次(每列代表新的一个月)。每列有 55000 行。虽然每个月的仪表读数都需要变化,但当作为时间序列时,每个仪表编号应该有 7 个实际读数。
目的是生成真实的数据以转化为热图(即标记异常的仪表读数)
我认为没有完全符合您要求的公式。我会使用一个非常简单的解决方案:
- 使用
=RANDBETWEEN(0,20)/100
生成 80% 的数据
- 使用
=RANDBETWEEN(20,30)/100
生成 10% 的数据
- 使用
=RANDBETWEEN(30,50)/100
生成 5% 的数据
- 等等
您可以通过修改参数轻松改变生成数据的精度,例如:=RANDBETWEEN(0,2000)/10000
将生成小数点后最多4位的数据。
更新
对用例使用 normal distribution,例如:
=NORMINV(RAND(), 20, 5)
其中 20 是平均值,5 是标准差。
我想使用 Excel 中的 RAND() 函数生成一个介于 0 和 1 之间的随机数。
但是,我希望 80% 的值落在 0 和 0.2 之间,90% 的值落在 0 和 0.3 之间,95% 的值落在 0 和 0.5 之间,等等。
这让我想起了我曾经上过一门应用统计学课程,但并没有真正了解课程中的内容...
使用 Excel 公式实现此结果的最佳方法是什么?或者,这种统计计算称为什么/我可以 Google 围绕的任何其他指针。
=================
用例:
我有一列仪表读数,我想将其复制 7 次(每列代表新的一个月)。每列有 55000 行。虽然每个月的仪表读数都需要变化,但当作为时间序列时,每个仪表编号应该有 7 个实际读数。
目的是生成真实的数据以转化为热图(即标记异常的仪表读数)
我认为没有完全符合您要求的公式。我会使用一个非常简单的解决方案:
- 使用
=RANDBETWEEN(0,20)/100
生成 80% 的数据
- 使用
=RANDBETWEEN(20,30)/100
生成 10% 的数据
- 使用
=RANDBETWEEN(30,50)/100
生成 5% 的数据
- 等等
您可以通过修改参数轻松改变生成数据的精度,例如:=RANDBETWEEN(0,2000)/10000
将生成小数点后最多4位的数据。
更新
对用例使用 normal distribution,例如:
=NORMINV(RAND(), 20, 5)
其中 20 是平均值,5 是标准差。