how to apply condition on multiple columns?
Afficher commentaires plus anciens
I have a large data set that is unequal in every way so to get things done i have to apply condition on the element of the specific columns. E.g
1 1 234
1 1 234
1 1 180
1 2 345
1 2 674
.
.
.
8 1 453
8 1 678
8 2 478
8 2 345
8 2 345
.
.
.
31 21 456
31 22 452
31 22 345
31 23 670
31 23 567
31 23 456
what i want the programme to do is that check the value in column 1 if it equals 1 the check the value in column 2 if it equals 1 then take the mean of all the values in column 3 corresponding to column 2. similarly i want it to repeat for all the values in column 2 for 1st then all the other numbers in column 1 till last number in this case which is 31.
1 commentaire
Réponse acceptée
Plus de réponses (1)
>> out = accumarray(A(:,1:2),A(:,3),[],@mean);
And checking:
>> out(1,2) % mean when A(:,1)==1 & A(:,2)==2
ans = 509.50
>> out(8,1) % mean when A(:,1)==8 & A(:,2)==1
ans = 565.50
1 commentaire
Andrei Bobrov
le 31 Mar 2017
+1
Catégories
En savoir plus sur Whos dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!