How can I select randomly?
古いコメントを表示
Hello, I have an 10000 rows and 10 columns matrix. I want to select randomly 500 rows from this matrix. I want to ask you, randperm function is true for this purpose. How can I select 500 rows randomly from this matrix?
採用された回答
その他の回答 (1 件)
M = rand(10000, 10);
index = randperm(10000, 500); % In modern Matlab versions
R = M(index, :);
In older Matlab versions randperm does not accept a 2nd input. Then:
index = randperm(10000);
index = index(1:500);
index = Shuffle(10000, 'index', 500)
7 件のコメント
Selin Soguksu
2012 年 12 月 12 日
Selin Soguksu
2012 年 12 月 13 日
Jan
2012 年 12 月 13 日
@Beril: Ouch. In my example M is only created to have any test data. In the real program this line should be omitted, of course. Your question contains only the description "I have an 10000 rows and 10 columns matrix" and I filled it with random data. This is a usual method in a forum, because it allows to test the code before posting it.
Image Analyst
2012 年 12 月 14 日
I could hear the sound of a hand slapping a forehead all the way across the Atlantic. ;-)
Matt Fig
2012 年 12 月 14 日
Apparently saying, "M is your original matrix" would have made all the difference ;-).
Selin Soguksu
2012 年 12 月 19 日
カテゴリ
ヘルプ センター および File Exchange で Creating and Concatenating Matrices についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!