Matrix Matlab:矩阵中第二列的总和,用于第一列中的相等值

Matrix Matlab:矩阵中第二列的总和,用于第一列中的相等值,matrix,sum,multiple-columns,Matrix,Sum,Multiple Columns,我想对第二列中第一列中具有相同值的所有值求和。 所以我的矩阵可能是这样的: 栏:[1 1 2 3 3 3 4 5] 栏目:[3 5 8 2 6 4 0 6 1 0 2 6] 现在我想让第1列中的值1在第2列中有一个3、5和8的和,第1列中的2、3也是如此。 例如: [1 2 3 4 5],, [16 8 11 0 8] 我很感谢你的建议 当值相等时,求和所有值: Just to init : a = [1 1 1 2 2 3 3 3 3 4 5 5 ; 3 5 8 2 6 4 0 6 1 0 2

我想对第二列中第一列中具有相同值的所有值求和。 所以我的矩阵可能是这样的:

  • 栏:[1 1 2 3 3 3 4 5]
  • 栏目:[3 5 8 2 6 4 0 6 1 0 2 6]
  • 现在我想让第1列中的值1在第2列中有一个3、5和8的和,第1列中的2、3也是如此。 例如:

    [1 2 3 4 5],, [16 8 11 0 8]


    我很感谢你的建议

    当值相等时,求和所有值:

    Just to init :
    a = [1 1 1 2 2 3 3 3 3 4 5 5 ; 3 5 8 2 6 4 0 6 1 0 2 6];
    a = a.';
    
    我们走吧:

    n=0
    for i=1:size(a,1)
       if a(i,1) == a(i,2)
          n = n + a(i,1) 
       end 
    end
    n
    
    关于第二个问题:

    mat=0
    for j = 1:max(a(:,1))
        n=0
            for i=1:size(a,1)
               if j == a(i,1)
                  n = n + a(i,2) 
               end
            end
        mat(j,1) = j
        mat(j,2) = n
    end
    mat
    
    结果:

    mat =
    
         1    16
         2     8
         3    11
         4     0
         5     8