-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 つのコピーを含む行列を作成する関数を作成しました。

リスト内の各番号に対してこのコピーを実行するループを作成できますか?

後で、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 に答える