Matlab 给定概率下的随机数选择,附加概率低于某个值

Matlab 给定概率下的随机数选择,附加概率低于某个值,matlab,probability,random-sample,Matlab,Probability,Random Sample,我有以下问题,我想不出如何解决它。 我必须以给定的概率连续14次从矩阵中随机抽取一个数字,但在每个循环中,我都有拒绝某些值的概率 我必须从以下(x)中采样一个值 …具有相应的概率(p): 但每次(1:14)我都有不同的概率(p2)选择某个特定值(b): 举个例子:在第四次重复中,我必须从矩阵x中选择一个数字,概率从矩阵p中给出,我有0.9970的概率选择一个100以下的数字,0.9733的概率选择一个80以下的数字,0.9555的概率选择一个70以下的数字,0.9110的概率选择一个50以下的数

我有以下问题,我想不出如何解决它。 我必须以给定的概率连续14次从矩阵中随机抽取一个数字,但在每个循环中,我都有拒绝某些值的概率

我必须从以下(x)中采样一个值

…具有相应的概率(p):

但每次(1:14)我都有不同的概率(p2)选择某个特定值(b):

举个例子:在第四次重复中,我必须从矩阵x中选择一个数字,概率从矩阵p中给出,我有0.9970的概率选择一个100以下的数字,0.9733的概率选择一个80以下的数字,0.9555的概率选择一个70以下的数字,0.9110的概率选择一个50以下的数字,等等

如果您需要任何澄清,请随时发表评论!
提前非常感谢

到目前为止,你有什么特别的尝试吗?嗯,我试着用给定的概率创建随机数,但它不正确:因为I=1:14;R(i)=x(总和((rand(1)>=cumsum(p./sum(p))))+1);End你有没有看过
randsample
?我试过使用randsample,我想是不正确的,因为当我用给定的概率运行生成1000个随机数的相同过程时,结果是错误的:对于I=1:1000 y(I)=randsample(x,1,true,p);结束;现在,我想我正确地使用了它,首先我规范化了p,作为p=p/(和(p));然后我使用y=randsample(x,10000,true,p);结果与给出的概率非常相似。现在我必须在概率p2和表bAnything给出的每一个循环中添加限制,特别是你们到目前为止尝试过的?好吧,我尝试创建具有给定概率的随机数,但它不正确:因为I=1:14;R(i)=x(总和((rand(1)>=cumsum(p./sum(p))))+1);End你有没有看过
randsample
?我试过使用randsample,我想是不正确的,因为当我用给定的概率运行生成1000个随机数的相同过程时,结果是错误的:对于I=1:1000 y(I)=randsample(x,1,true,p);结束;现在,我想我正确地使用了它,首先我规范化了p,作为p=p/(和(p));然后我使用y=randsample(x,10000,true,p);结果与给出的概率非常相似。现在我必须在概率p2和表b给出的每个循环中添加限制
x=10:5:120;
p=[0.0795 0.0439 0.0694 0.0259 0.1325 0.0181 0.0753 0.1885 0.0753 0.0145 0.1145 0.0229 0.0247 0.0295 0.0289 0.0066 0.0307 0.0054 0.0030 0.0036 0 0 0];
b=[100 80 70 50 40 20 10]; p2=[0.9970,0.9970,0.9970,0.9822,0.9496,0.6291,0.0564;0.9970,0.9881,0.9881,0.9733,0.9080,0.5935,0.0504;0.9970,0.9970,0.9703,0.9377,0.8427,0.5460,0.0445;0.997,0.9733,0.9555,0.911,0.7478,0.4926,0.0356;0.997,0.9555,0.9377,0.8754,0.6647,0.4273,0.0326;0.997,0.9674,0.908,0.8101,0.5757,0.3561,0.0297;0.9970,0.9733,0.8843,0.7864,0.5134,0.3056,0.0267;0.997,0.9496,0.8813,0.7596,0.4777,0.273,0.0267;0.997,0.9614,0.8783,0.7478,0.4481,0.2493,0.0237;0.997,0.9674,0.8754,0.7359,0.4273,0.2255,0.0208;0.997,0.9763,0.8843,0.73,0.4095,0.2107,0.0208;0.997,0.9792,0.8724,0.7211,0.3947,0.2018,0.0208;0.997,0.9763,0.8694,0.7181,0.3858,0.1958,0.0237;0.997,0.9525,0.8694,0.7151,0.3739,0.1869,0.0267;];