MATLAB中初始化矩阵的问题
1,我要按某种条件从矩阵A中抽取某一行,放入矩阵B中,但是不知道矩阵A中有多少符合条件的行,所以如何初始化B矩阵?2,matlab中的if判断语句是否必须用到else可不...
1,我要按某种条件从矩阵A中抽取某一行,放入矩阵B中,但是不知道矩阵A中有多少符合条件的行,所以如何初始化B矩阵?
2,matlab中的if判断语句 是否必须用到else 可不可以if 条件符合 执行语句 不符合 不做任何运算呢?
程序如下
function[pop1]=select(ET)
[M,N]=size(ET);
b=1;
A=zeros(1,M);
for i=1:M
a=sum(A,2);
fitness=1./ET(M,N);
A(1,i)=fitness;
if a<rand(1)<sum(A,2);
pop1(b,:)=pop(M,:);
b=b+1;
end
end
因为不知道pop1的行数 所以没有写pop1的初始化 展开
2,matlab中的if判断语句 是否必须用到else 可不可以if 条件符合 执行语句 不符合 不做任何运算呢?
程序如下
function[pop1]=select(ET)
[M,N]=size(ET);
b=1;
A=zeros(1,M);
for i=1:M
a=sum(A,2);
fitness=1./ET(M,N);
A(1,i)=fitness;
if a<rand(1)<sum(A,2);
pop1(b,:)=pop(M,:);
b=b+1;
end
end
因为不知道pop1的行数 所以没有写pop1的初始化 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询