MATLAB:复制向量的前n个元素,然后跳过n个元素,然后复制后n个元素

user1205901-恢复莫妮卡

Vector xis 2000 -by- 1

我想将20vector的第一个元素x复制到vector y,然后将vector的下一个20元素复制x到vector z,然后将下一个20元素复制到vector y,依此类推。

我知道我可以通过循环来做到这一点,但我希望找到一种更有效的方法。

亚基·苏科宁(Aki Suihkonen)

这可以通过将向量重塑为矩阵,选择奇数/偶数列并最终展平矩阵来实现:

 m = reshape(a, 20, []);
 x = m(:,1:2:end); x = x(:);
 z = m(:,2:2:end); z = z(:);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章