我有一个向量 Cycle(),它可以包含几个可变大小的元素。
我想从这个向量中提取奇数列中的所有值,即 Cycle(1),Cycle(3),Cycle(5) ...并将它们保存到新矢量Rcycle。
那是我的代码:
Rcycle = zeros(1, length(cycle)/2);
Rcycle(1) = cycle(1);
for j=3:length(cycle);
for i=2:length(Rcycle);
Rcycle(i) = cycle(j);
j = j+2;
end
end
此外,我想从 Cycle()中提取偶数列,并将它们保存在矢量Lcycle中。我的代码:
Lcycle = zeros(1, length(cycle)/2);
Lcycle(1) = cycle(2);
for k=4:length(cycle);
for i=2:length(cycle);
Lcycle(i) = cycle(k);
k = k+2;
end
end
通过运行这个带有12个元素的样本Cycle(),我得到了Lcycle的正确结果,但对于Rcycle来说是错误的结果。我也得到了我的矩阵超出其维度的错误。
有谁知道如何以更顺畅的方式解决这个问题?
答案 0 :(得分:1)
使用矢量索引!
Rcyle=cycle(1:2:end); %// Take from cycle starting from 1, each 2, until the end
Lcycle=cycle(2:2:end);%// same, but start at 2.