excel中如何按概率返回规定数值
我想让一个单元格返回的数值是60-100,但是我又想让他们出现的频率不一样,比如说我希望要80多的数字出现的频率很高,但是其他的数字也不能一直不出现
这个只要增加一个IF()和RAND()函数结合RANDBETWEEN()使用就可以
因为RAND()是0到1之间均布出现,把RAND()的值做个判定就能控制输出的区间值
假设希望80-90出现概率是70%,其他区间随机均布
那么数据60-70,70-80,80-90.90-100一共4个区间,扣除80-90的70%,那么其他区间就是30%
也就是60-70 出现概率10%
70-80 出现概率10%
80-90 出现概率70%
90-100 出现概率10%
那么我们把RAND()的值按以上概率分配就可以
60-70 出现概率10% RAND()值取0-0.1
70-80 出现概率10% RAND()值取0.1-0.2
90-100 出现概率70% RAND()值取0.2-0.3
80-90 出现概率10% RAND()值取0.3-1.0
再简化一下:
60-79 出现概率20% RAND()值取0-0.2
91-100 出现概率10% RAND()值取0.2-0.3
80-90 出现概率10% RAND()值取0.3-1.0
按这个思路就可以写公式:如图效果图:
可以看出80-90的个数138/200约70%
A1到J20一共200个单元格,公式为:
=IF(RAND()<0.2,RANDBETWEEN(60,79),IF(AND(RAND()>=0.2,RAND()<0.3),RANDBETWEEN(91,100),RANDBETWEEN(80,90)))
按以上思路调整你的比例和数据区间就可以
=CHOOSE(LOOKUP(RAND(),{0;0.1;0.3;0.5;0.6;0.75},{1;2;3;4;5;6}),11,12,13,14,15,16)但是概率不同于比例,存在这种概率不代表一定会出现。