Random pick data by label

1 vue (au cours des 30 derniers jours)
Hg
Hg le 7 Août 2015
I have a data array (13x5). The last column is the class (1-4) of each data. How do I randomly pick n-number of data from each class? Let say 2 data from each class.

Réponse acceptée

Azzi Abdelmalek
Azzi Abdelmalek le 7 Août 2015
Modifié(e) : Azzi Abdelmalek le 7 Août 2015
A=[randi(9,100,4) randi([1 4],100,1)] % Example
[ii,jj,kk]=unique(A(:,5))
m=accumarray(kk,(1:numel(kk))',[],@(x) {x'})
out=cell2mat(cellfun(@(x) A(x(randperm(numel(x),2)),:),m,'un',0))

Plus de réponses (0)

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Tags

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by