昨天的文章提到《如何不留痕迹做批量 "假"数据?》提到用rand函数批量生成随机数,这是最简单最快速的方法,但同时也有一个缺陷,就是rand函数生成的是均匀分布的随机数,在区间范围内会分布得比较均匀,不符合日常生活中数据的按照正态分布的特点,这样也就留下了明显的痕迹。
比如我用rand函数生成0-100的100个随机数,用Minitab自动生成直方图,频数是下面这样的:
大家可以看到,大致上每个区间分布的数据都比较均匀。再次解释,rand函数是产生均匀分布随机实数,也就是每个数都是等概率出现的。
而日常生活中的数据,大致符合正态分布,即两端少,中间多的曲线,像一只倒扣的大钟。
英文叫normal distribution,也就是「正常」状态下的分布,大陆取一个「正」字,翻译为「正态分布」,台湾取一个「常」字,翻译为「常态分布」,我觉得还是台湾翻译得好,「常态分布」一看就知道是什么意思,而「正态分布」故弄玄虚,英文中文里不存在正态这个词,我也是后来看到英文normal distribution才知道原来这么简单。
比如一个学校的学生成绩,正常状态下是中等生多,尖子生和差生少。
比如量一批零件的数据,正态状态下也是中间尺寸的多,大的和小的少。
那怎么生成正态分布随机数呢?
Excel确实有有函数可以生成正态分布的随机数&#x