MATLAB。当第二列的行具有相同的值时,如何对第一列的所有行求和?
在MATLAB上。假设我有一个矩阵a(I,j)。在这种情况下,i=5,j=4。当第二列上的行具有相同的值时,我希望对第一列的所有行求和。采用如下矩阵:MATLAB。当第二列的行具有相同的值时,如何对第一列的所有行求和?,matlab,Matlab,在MATLAB上。假设我有一个矩阵a(I,j)。在这种情况下,i=5,j=4。当第二列上的行具有相同的值时,我希望对第一列的所有行求和。采用如下矩阵: 4000 54571 4000 54571 4000 54572 4000 54573 4000 54574 我想编写一段代码,返回: 8000 54571 4000 54572 4000 54573 4000 54574 你知道怎么做吗 非常感谢,使用unique和accumarray
4000 54571
4000 54571
4000 54572
4000 54573
4000 54574
我想编写一段代码,返回:
8000 54571
4000 54572
4000 54573
4000 54574
你知道怎么做吗
非常感谢,使用
unique
和accumarray
octave:1> X=[4000 54571
> 4000 54571
> 4000 54572
> 4000 54573
> 4000 54574
> ]
X =
4000 54571
4000 54571
4000 54572
4000 54573
4000 54574
octave:2> [keys,~,values] = unique(X(:,2));
octave:3> [accumarray(values,X(:,1)), keys]
ans =
8000 54571
4000 54572
4000 54573
4000 54574
你能用这个吗