原帖地址 http://emuch.net/bbs/viewthread.php?tid=3330652
求助随机生成数据的问题
比如有a,b,c,d,e,f等6个变量,已知它们的取值范围
70<=a=<90
5<=b=<15
1<=c=<10
0<=d=<5
0<=e=<1
0<=f=<0.5
且要求a+b+c+d+e+f=100
请高手赐教如何编一个高效的matlab程序生成100组这样的数据? 我编了一个,但是效率太低。小弟数学很差,高考不及格
本贴金币手工发放
lds588(+20)
★ ★ 臭水沟(金币+2): 谢谢应助~~ 2011-06-24 08:33:18 harp(金币+20): 学习到一些东西 2011-06-24 09:09:45
引用回帖:
Originally posted by harp at 2011-06-23 20:41:58: 比如有a,b,c,d,e,f等6个变量,已知它们的取值范围 70<=a=<90 5<=b=<15 1<=c=<10 0<=d=<5 0<=e=<1 0<=f=<0.5
且要求a+b+c+d+e+f=100
请高手赐教如何编一个高 …
function A=zrand(n)
A=zeros(n,6);
for i=1:n
a=0;
while (a<70)||(a>90)
f=0.5*rand;
e=rand;
d=5*rand;
c=1+9*rand;
b=5+10*rand;
a=100-(b+c+d+e+f);
end
A(i,:)=[a b c d e f];
end
调用
A=zrand(100)
其中100表示生成100组
本人原帖地址 http://emuch.net/bbs/viewthread.php?tid=3415178&fpage=1