我使用 =NORM.S.INV(rand()) 在excel中确实可以生成一组标准正态分布的样本数据。但是我不理解NORM.S.INV为什么可以将一组均匀分布的0-1的随机数转化为一组标准正态分布的数据?
office官方的介绍说NORM.S.INV返回标准正态累积分布函数的反函数值。 该分布的平均值为 0,标准偏差为 1。我研究了一下这个函数。其功能就是你给他相应的概率值,它给你返回标准正态分布中这个概率对应的累计分布值。 标准正态分布的均值是0 ,小于0的数据累计概率是50% 。则 NORM.S.INV(0.5) 返回的就是0这个值。同理,NORM.S.INV(0.9) 的返回值是1.281552。
问题在于,标准正态分布样本中“0或其附近的数值”出现的频率应该远高于“1.281552或其附近近数值”出现的频率。但是rand() 作为NORM.S.INV函数的输入项。却是一个均匀分布的随机数。那么按理说NORM.S.INV(rand()) 的返回结果中 “0或其附近的数值”出现的频率也就应该 与 “1.281552或其附近近数值”出现的频率 大致相等(因为rand()生成0.5的频率与生成0.9的频率是相近的)。那么按理说生成的就不是服从标准正态分布的样本。但是我在excel中实际进行实验 =NORM.S.INV(rand()) 确实可以生成标准正态分布的数据。请问为什么会出现这种矛盾的结果呢?