用EXCEL想随机生成1列数据,超出某范围的数据出现的概率为5%,

如图:0到8的数字在这1列中出现的几率是90%,9-12出现的概率是10%,该列数据中不得出现大于12的数字... 如图:

0到8的数字在这1列中出现的几率是90%,9-12出现的概率是10%,该列数据中不得出现大于12的数字
展开
 我来答
山桑弓
2014-04-30 · TA获得超过1.2万个赞
知道大有可为答主
回答量:7793
采纳率:66%
帮助的人:2785万
展开全部

公式可为

=CHOOSE(MATCH(RAND(),{0,0.9}),INT(RAND()*9),9+INT(RAND()*4))

下拉。

这个公式是按照

0到8的数字在这1列中出现的几率是90%,9-12出现的概率是10%,该列数据中不得出现大于12的数字

这句话来做的。

其标题

用EXCEL想随机生成1列数据,超出某范围的数据出现的概率为5%,

与上面的意思有冲突,无法同时设置进去。

求取随机值,一般可以考虑用RAND函数,任意单元格中输入=RAND()  可以得到一个0-1之间的随机值,它可能等于0,不会等于1,修改它可以得到想要范围的随机数值,比如把它乘以9,再去除小数部分,可以得到0-8之间的值,INT(RAND()*9)    或变形为9+INT(RAND()*4)  可以得到9-12之间的随机值。MATCH(RAND(),{0,0.9})   的意思是查找RAND在{0,0.9}这个数组中的位置,如果RAND小于0.9,MATCH函数返回1,如果大于等于0.9返回2,因为RAND在0-1之间随机,所以MATCH为1的可以性为90%,为2的可能性为10%,CHOOSE利用MATCH来返回指定段数的函数,如果MATCH为1,CHOOSE返回第三段即INT(RAND()*9)部分,如果为2,返回第四段即9+INT(RAND()*4)部分。

参照附件

百度网友0fe7a17
2014-04-30 · TA获得超过2720个赞
知道大有可为答主
回答量:2192
采纳率:64%
帮助的人:480万
展开全部
=IF(MOD(ROW(),10)=0,RANDBETWEEN(9,12),RANDBETWEEN(0,8))
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式