Select the product you need help with
Excel 2007 和 Excel 2003 中 RAND 函数的说明文章编号: 828795 - 查看本文应用于的产品 本页概要本文说明一种经修改的算法,此算法在 Microsoft Office Excel 2007 和 Microsoft Office Excel 2003 中的随机数生成器函数 RAND 中使用。 更多信息早期版本的 Excel 中的 RAND 函数使用伪随机数生成算法,其性能在随机性标准测试中并不够好。虽然这可能只会影响那些要调用 RAND 非常多次(例如一百万次或更多)的用户,并且对于几乎所有用户都不构成问题,但本文所述的伪随机数生成算法是首先为 Excel 2003 实现的。它通过了相同的一系列标准测试。 这一系列测试称为 Diehard(参阅附注 1)。在 Excel 2003 中实现的算法由 B.A. Wichman 和 I.D. Hill(参阅附注 2 和附注 3)开发。此随机数生成器也用在 RAT-STATS 软件包中,该软件包由美国健康和人类服务部的监察长办公室提供。Rotz 等人(参阅附注 4)表示,此算法通过了 DIEHARD 测试和其他由美国国家标准与技术协会(NIST,以前称为美国国家标准局)开发的测试。 附注
由于 RAND 产生伪随机数,因此,如果产生序列很长的伪随机数,则序列本身最终将会重复。如 Wichman-Hill 过程那样组合随机数可保证在开始重复之前生成超过 10^13 个数字。早期版本的 RAND 在几项 Diehard 测试中的结果不尽如人意,原因是在数字开始重复之前所经过的周期短得不能让人接受。 早期版本的 Excel 中的结果实际上,早期版本的 Excel 中的 RAND 函数对于不需要很长随机数序列(例如一百万个)的用户是很好的。它未能通过几项随机性标准测试,使得它的性能在需要很长随机数序列时构成问题。Excel 2003 中的结果实现了简单和有效的算法。新的生成器通过了所有随机性标准测试。结束语需要很长随机数序列的 RAND 高级用户使用 Excel 2003 的新生成器会取得较好效果。其他用户可以继续使用早期版本的 Excel 中的 RAND。参考
有关已记载的在 RAND 中发生的问题的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
834520
(http://support.microsoft.com/kb/834520/
)
Excel 2003 中的 RAND 函数返回负数
属性文章编号: 828795 - 最后修改: 2007年2月2日 - 修订: 5.0
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。 | 文章翻译
|


回到顶端








