2017-02-25 27 views
1

配列に10個の数字がある場合a=[1 2 3 4 5 6 7 8 9 10] 5セットをランダムに選択するにはどうしたらいいですか?上記アレイの場合配列内の数字をランダムに選択する

、答えは次のようになります。

S1=[3 8] 
S2=[2 5] 
S3=[1 4] 
S4=[6 9] 
S5=[7 10] 
+0

投稿の文言を修正して、実際に何を意味するのか明確にすることはできますか?場合によっては有効な結果の例が役立ちます。 – tmpearce

+0

質問を更新しました – Addee

+0

[randperm](https://www.mathworks.com/help/matlab/ref/randperm.html)を使用すると、 – rahnema1

答えて

1

あなたは元のベクトルにランダムインデックスを生成するためにrandpermを使用して、元のベクトルをシャッフルするためにそれを使用することができます。その後、ちょうど順序でシャッフルベクトルの要素を取る:S5スルー

a=[1 2 3 4 5 6 7 8 9 10]; 
shuffled = a(randperm(length(a))); 
sets = reshape(shuffled,5,2); 

、変数S1をマトリックスsetsの各行に対応しています。

関連する問題