统计数据分析过程中,常要求合理的学生成绩结构比例问题、收入结构比例问题等等,它们应该保持什么样的结构比例是合理的,是正态分布还是其它什么分布呢?
很显然,很多实际问题的结构比例很难用各种统计分布函数来解释、或模拟。以学生某门课程成绩比例为例:
成绩 | 不及格 | 及格 | 中等 | 良好 | 优秀 | 合计 |
成绩区间 | [0, 60) | [60, 70) | [70,80) | [80, 90) | [90,100] | * |
比例 | 0.1 | 0.3 | 0.4 | 0.15 | 0.05 | 1 |
该门课程成绩比例柱状图如下:
图1:成绩比例柱状图显示分布规律不明显
如果某学校要求100名同学学习成绩如上面所要求的比例,那么怎样能模拟出符合实际要求的成绩呢?
1、运用EXCEL制作累计比例和下限、上限成绩表
图2:运用EXCEL制作累计比例(概率)和成绩下限、上限表
2、运用RAND函数生成100个随机数
图3:根据100名同学的人数要求生成100个随机数(只显示20个)
3、根据随机数确定成绩序号
图4:根据随机数在累计比例中的位置确定成绩序号
提示:图4中单元格【I2】中公式【=COUNTIF(C$2:C$6,"<"&H2)+1】根据相邻H列随机数大小,利用COUNTIF函数统计随机数在累计比例中的排序位置做为成绩序号。例如,第5个随机数值为0.767631,在累计比例中比0.767631小的数有两个(0.1、0.4),所以随机数0.767631成绩序号为2+1=3。
基本原理:“分组比例越大、累计比例区间越宽,随机数落入的概率越大”。
4、根据【成绩序号】生成成绩
图5:用INDEX通过【成绩序号】在【成绩】中提取成绩名称
5、根据【成绩序号】生成具体分数
图6:用INDEX提取分组成绩下限和上限,然后用RANDBETWEEN函数生成区间随机分数
根据分组样本比例(概率)生成随机数的基本技巧为:
I、构造累计比例(概率)序列;
II、生成随机数;
III、根据累计比例(概率)序列确定随机数序号;
IV、根据随机数序号提取分组名称或生成组间数据。
最后需要强调的是,统计数据模拟不是统计数据造假,统计数据模拟的主要用途是在缺乏真实数据或实验条件受限的情况下,通过模拟生成大量逼真的数据样本,以便进行数据分析和建模。