MATLAB 中的向量串联

Vector concatenation in MATLAB

我想根据另一个向量值连接向量。为了简化问题,我给出了类似的情况: 假设我有一个单元格,其中包含 3 个向量 (s_i):

s_1 = [1 2 3];
s_2 = [2 1 3];
s_3 = [3 1 2];

s_i  = {s_1, s_2 , s_3 } ;

bits = [1 2 1 3 1];

所以我想创建一个新向量

new_vector = [s_1 s_2 s_1 s_3 s_1];

我的数据并不像我给的例子那么小。提前谢谢你。

试试这个:

new_vector = cell2mat(s_i(bits))

上述测试用例的结果:

new_vector =

     1     2     3     2     1     3     1     2     3     3     1     2     1     2     3

很简单:

new_vector = [s_i{bits}]