Random pick data by label

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.

 采纳的回答

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))

更多回答(0 个)

产品

标签

Community Treasure Hunt

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

Start Hunting!

Translated by