通过两个向量递增以将每个向量的部分添加到新向量(Matlab)
Increment through two vectors to add parts of each to a new vector (Matlab)
我有两个向量 colour
和 angle
。
我想创建一个新的矢量 F
,其组成如下:
angle
的前 16 个元素,接着是 colour
的前 512 个元素,接着是 angle
的后 16 个元素,接着是 colour
的第二个 512 个元素等...
我尝试使用两个 while
循环来实现它,如下所示。
colour = reshape(col,1,[]);
angle = reshape(ang,1,[]);
j = 1;
i = 1;
F = [];
while i <= 64
F = [F angle(i:i+15)];
i = i + 16;
while j <= 2048
F = [F colour(j:j+511)];
end
j = j + 512;
end
这不符合我的预期。谁能帮我解决这个问题?
非常感谢。
我会这样解决:
c2=reshape(colour,16,[]);
a2=reshape(angle,512,[]);
merged=[c2;a2];
merged=merged(:);
使用重塑操作,它是 c2 的第一列,然后是 a2 的第一列,然后是 c2 的第二列等等...
我有两个向量 colour
和 angle
。
我想创建一个新的矢量 F
,其组成如下:
angle
的前 16 个元素,接着是 colour
的前 512 个元素,接着是 angle
的后 16 个元素,接着是 colour
的第二个 512 个元素等...
我尝试使用两个 while
循环来实现它,如下所示。
colour = reshape(col,1,[]);
angle = reshape(ang,1,[]);
j = 1;
i = 1;
F = [];
while i <= 64
F = [F angle(i:i+15)];
i = i + 16;
while j <= 2048
F = [F colour(j:j+511)];
end
j = j + 512;
end
这不符合我的预期。谁能帮我解决这个问题?
非常感谢。
我会这样解决:
c2=reshape(colour,16,[]);
a2=reshape(angle,512,[]);
merged=[c2;a2];
merged=merged(:);
使用重塑操作,它是 c2 的第一列,然后是 a2 的第一列,然后是 c2 的第二列等等...