从向量中提取值并保存在新向量中

Extract values from vector and save in new vector

我有一个向量 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 的结果是错误的。我还收到错误消息,说我的矩阵超出了它的维度。

有没有人知道如何更顺利地解决这个问题?

使用矢量索引!

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.