Group values in a double & create new matrix according to the groups formed
Afficher commentaires plus anciens
I have a double variable A with 1 column and 30000 rows:
A=[44
12
79
12
83
63
53…]
I applied the following code:
groupA=cell2mat(A(:,1));
[~, ~, ugroupA] = unique(groupA)
DA=dummyvar(ugroupA);
And I obtained a double matrix with 30000 rows and 262 columns with ones and zeros. The number of columns -262 - reflects the different numbers of the variable A.
What I am trying to do now is to apply basically the same code, but instead of getting a new column of ones and zeros for each different number in A, I would like to have a different column for the values between:
0 to 5
5 to 10
10 to 15
15 to 20
20 to 30
30 to 40
40 to 50
50 to 100
100 to 150
150 to 200
200 to 300
So instead of obtaining a new variable DA with 30000 rows and 262 columns, I would get a variable with 30000 rows but 11 columns.
Can someone help me please? Thank you
Réponse acceptée
Plus de réponses (1)
Andrei Bobrov
le 25 Août 2014
Modifié(e) : Andrei Bobrov
le 26 Août 2014
EDIT
v = [0
5
10
15
20
30
40
50
100
150
200
inf];
[~,b] = histc(A,v);
out = dummyvar(b);
Catégories
En savoir plus sur Analysis of Variance and Covariance dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!