フィルターのクリア

randperm

13 ビュー (過去 30 日間)
Miriam
Miriam 2011 年 11 月 11 日
How can I use randperm for a nx2 matrix?
  1 件のコメント
Dr. Seis
Dr. Seis 2011 年 11 月 11 日
"randperm" only takes 1 scalar input argument. Can you give a sample of an input nx2 matrix AND what you would expect the output to be?

サインインしてコメントする。

回答 (3 件)

Jonathan
Jonathan 2011 年 11 月 11 日
If you want to randomly permute the rows, do something like the following.
n = 5;
A = reshape(1:2*n, n, 2)
B = A(randperm(n), :)
If you want to randomly permute all elements, do something like this instead.
C = reshape(A(randperm(2*n)), n, 2)
  1 件のコメント
Jonathan
Jonathan 2011 年 11 月 11 日
@Miriam, to permute the columns separately do this.
D = A;
D(:,1) = D(randperm(n),1);
D(:,2) = D(randperm(n),2);

サインインしてコメントする。


Miriam
Miriam 2011 年 11 月 11 日
I see, hmm.. actually I wanted to permute the two columns seperately, but I guess this will not work with randperm. But the suggestions were very helpful anyway! Thanks!

Jan
Jan 2011 年 11 月 11 日
You can use FEX: Shuffle:
A = rand(100, 2);
Dim = 1;
B = Shuffle(A, Dim);

カテゴリ

Help Center および File ExchangeCreating and Concatenating Matrices についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by