How can I extract random data from a matrix?

Hi everyone.
I have a M rows by N columns matrix and I need to extract X random samples of it of the same size. I suposse is a simple task but I'm new at Matlab.
Thanks a lot.

 Réponse acceptée

Azzi Abdelmalek
Azzi Abdelmalek le 14 Sep 2012
Modifié(e) : Azzi Abdelmalek le 14 Sep 2012
A=rand(10,5) %your matrix aray
B=A(:)
X=20; %number of random sample
[v,idx]=sort(rand(1,numel(A)));
Samples=B(idx(1:X))

2 commentaires

Gerardo
Gerardo le 16 Sep 2012
Thanks for your help Azzi, it works great.
using Sean Wolski suggestion (randperm)
A=rand(10,5) %your matrix aray
Samples=A(randperm(numel(A),20))

Connectez-vous pour commenter.

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by