excel中RAND函数产生随机数的概率控制
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了excel中RAND函数产生随机数的概率控制相关的知识,希望对你有一定的参考价值。
例如要生成10,20,30,40,50五个随机数,且要控制其出现概率分别为10%,20%,40%,20%,10%。哪位大侠帮帮忙实现一下,能给个具体的操作办法。谢谢,急用
参考技术A 可以用取值范围来控制概率:=lookup(rand(),0,0.1,0.3,0.7,0.9,1,10,20,30,40,50)追问
怎么分布不是很准确啊?
追答概率嘛,本来就有比较大的随机性,只有你生成的数字有无限多时,这个概率才会无限接近设定概率。
如果你只是想让它生成1个10,两个20,四个30,两个40,一个50,那好办,但是不能用概率公式了。
也可以本回答被提问者采纳 参考技术C =CHOOSE(INT(RAND()*10)+1,10,20,20,30,30,30,30,40,40,50)追问
怎么分布不是很准确啊?
追答本身是不太精确
我试了500个数据
分布如下:
10 65 13%
20 98 20%
30 196 39%
40 98 20%
50 43 9%
你希望要精确的分布吗?
MATLAB的简单随机生成函数
参考技术A 一、rand ():生成(0,1)区间上均匀分布的随机变量rand(5,1) %生成随机数排列的列向量。
rand(5)%生成5行5列的随机矩阵。
rand(5,2)%生成5行2列的随机矩阵。
x=rand(10000,1);
hist(x);%绘图,生成随机数的分布
二、randn ():生成(0,1)区间上正态分布的随机变量
randn(5,1)%生成随机数排列的列向量
randn(5)%生成5行5列的随机矩阵。
randn(5,2)%生成5行2列的随机矩阵。
x=randn(10000,1);
hist(x);%绘图,生成随机数的分布
三、连续型分布随机函数
unifrnd ():生成某个区间上均匀分布的随机变量
unifrnd(-2,3,5,1)%在(-2,3)区间内生成一列随机变量
unifrnd(-2,3,5)%在(-2,3)区间内生成5行5列的随机变量
unifrnd(-2,3,5,2)%在(-2,3)区间内生成5行2列的随机变量
x=unifrnd(-2,3,100000,1);
hist(x,50)%绘图,生成随机数的分布
normrnd ():生成指定均值,标准差的正态分布的随机变量
normrnd(2,3,5,1)%生成指定均值为2,标准差为3的正态分布的5行1列随机变量
normrnd(2,3,5)%生成指定均值为2,标准差为3的正态分布的5行5列的随机变量
normrnd(2,3,5,2)%生成指定均值为2,标准差为3的正态分布的5行2列的随机变量
x=unifrnd(-2,3,100000,1);
hist(x,50)%绘图,生成随机数的分布
chi2rnd():生成的随机数服从自由度为v的卡方分布
chi2rnd(5,5,1)%生成服从自由度为5的卡方分布的5行1列随机变量
chi2rnd(5,5)%生成服从自由度为5的卡方分布的的5行5列的随机变量
chi2rnd(5,5,2)%生成服从自由度为5的卡方分布的5行2列的随机变量
x=chi2rnd(5,100000,1);
hist(x,50)%绘图,生成随机数的分布
frnd():生成的随机数服从参数为w,v的t分布
frnd(3,5,5,1)%生成服从参数为(3,5)的f分布的5行1列随机变量
frnd(3,5,5)%生成服从参数为(3,5)的f分布的的5行5列的随机变量
frnd(3,5,5,2)%生成服从参数为(3,5)的f分布的5行2列的随机变量
x=frnd(3,5,10000,1);
hist(x,50)%绘图,生成随机数的分布
trnd():生成的随机数服从参数为v的t分布
trnd(5,5,1)%生成服从参数为5的t分布的5行1列随机变量
trnd(5,5)%生成服从参数为5的t分布的的5行5列的随机变量
trnd(5,5,2)%生成服从参数为5的t分布的5行2列的随机变量
x=trnd(5,100000,1);
hist(x,50)%绘图,生成随机数的分布
同理:
betarnd()%生成服从参数为(w,v)的Beta分布的随机数
exprnd() %生成服从参数为mu的指数分布的随机数
gamma()%生成服从参数为(w,v)的Gamma分布的随机数
lognrd()%生成服从参数为(mu,sigma)的对数正态分布的随机数
raylrnd()%生成服从参数为w的瑞利分布的随机数
wblrnd()%生成服从参数为(scale,shape)的对数正态分布的随机数
......
四、离散型分布随机函数
unidrnd()%生成服从离散均匀分布的随机数
unidrnd(5,5,1) %生成一列随机变量
unidrnd(5,5) %生成5行5列的随机变量
unidrnd(5,5,2) %生成5行2列的随机变量
x=unidrnd(9,100000,1);
hist(x,9) %绘图,生成随机数的分布
binornd() %生成的随机数服从参数为(N,p)的二项分布
binornd(10,0.3,5,1)%生成5个随机数排列的列向量
%注:上述语句生成的随机数所服从的参数为(10,0.3)的二项分布
binornd(10,0.3,5) %生成5行5列的随机数矩阵
%注:上述语句生成的随机数所服从的参数为(10,0.3)的二项分布
binornd(10,0.3,[5,2])%生成一个5行2列的随机数矩阵
%注:上述语句生成的随机数所服从的参数为(10,0.3)的二项分布
x=binornd(10,0.45,100000,1);
hist(x,11);%绘图,生成随机数的分布
geornd()%此函数生成服从几何分布的随机数。
geornd(0.4,5,1) %生成5个随机数排列的列向量
%注:上述语句生成的随机数所服从的参数为(0.4)的二项分布
geornd(0.4,5) %生成5行5列的随机数矩阵
%注:上述语句生成的随机数所服从的参数为(0.4)的二项分布
geornd(0.4,[5,2]) %生成一个5行2列的随机数矩阵
%注:上述语句生成的随机数所服从的参数为(0.4)的二项分布
x=geornd(0.4,100000,1);
hist(x,50)%绘图,生成随机数的分布
poissrnd() %生成服从泊松(Poisson)分布的随机数
poissrnd(2,5,1) %生成5个随机数排列的列向量
%注:上述语句生成的随机数所服从的参数为(2)的泊松分布
poissrnd(2,5) %生成5行5列的随机数矩阵
%注:上述语句生成的随机数所服从的参数为(2)的泊松分布
poissrnd(5,[5,2])%生成一个5行4列的随机数矩阵
%注:上述语句生成的随机数所服从的参数为(2)的泊松分布
x=poissrnd(2,100000,1);
hist(x,50);%绘图,生成随机数的分布
以上是关于excel中RAND函数产生随机数的概率控制的主要内容,如果未能解决你的问题,请参考以下文章
怎样用Excel随机函数rand()生成随机数字和大写字母,能自动产生4位混合的
一个可以随机产生123的函数如何构筑成随机产生12345的函数
rand产生随机数怎样控制在1~52内而且不能重复。1~52必须出现一次。谢谢