-1

我必须将数字列表(例如 4 1 3 2)转换为相同数字的列表,但每个数字都有多个副本(并且它们必须按特定顺序排列)(例如 4 4 4 4 1 1 1 1 3 3 3 3 2 2 2 2)

现在我的计划是为每个矩阵制作一个 4x1 矩阵(如 a = [ 4 4 4 4]),但我无法为列表中的每个数字进行此运行。我创建了一个函数,该函数接受值 (4) 并创建一个矩阵,该矩阵通过一个循环在 4x1 中包含它的 4 个副本。

我可以为列表中的每个数字创建一个循环来运行这个副本吗?

aftewrads 我想我可以使用 vertcat 将所有矩阵组合到我正在寻找的列表中。

谢谢!

4

1 回答 1

1

在任何情况下都不需要循环。

和中的每个条目具有恒定长度val = [4 1 3 2]repmat()reshape()

len = 4;
reshape(repmat(val,len,1),1,[])

或者对于可变长度,使用FEX解码:rude()

len = [1 2 3 4];
rude(len,val)
于 2013-07-10T21:36:49.777 回答