Info
Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.
Comparing two matrix elements summing third and storing them separately
    2 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
the problem is extension of the question https://www.mathworks.com/matlabcentral/answers/106095-comparing-matrix-elements-and-performing-operation-if-equal
 whenever the elemnts in column 1 and 3 both are repeated elsewhere in matrix then only third column should get added up
e.g
 A=
  18   18    1
   17   20    2
   18   18    1
   17   25    2
   19   17    3
   18   18    1
   19   17    3
then answer should be
 18   18    1
   17   20    2
   18   18    2
   17   25    2
   19   17    3
   18   18    3
   19   17    6
After that i want that the final matriz should be of the form 
x = [  17   20    2
         17   25    2
         18   18    3
         19   17    6]
0 Kommentare
Antworten (2)
  madhan ravi
      
      
 am 7 Jul. 2019
        T = array2table(A);
t = groupsummary(T,{'A1','A2'},'sum');
x = t{:,[1,2,end]}
1 Kommentar
  madhan ravi
      
      
 am 7 Jul. 2019
				Or:
[u,~,idx] = unique(A(:,1:2),'rows');
x = [u,accumarray(idx,A(:,3),[],@sum)]
  Andrei Bobrov
      
      
 am 7 Jul. 2019
        [B,BB] = groupsummary(A(:,3),A(:,1:2),'sum');
out = [BB{:},B];
0 Kommentare
Diese Frage ist geschlossen.
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


