查看: 172|回复: 1|关注: 0

[已答复] 我现在有两个n*3的矩阵,怎么筛选出它们前两列相同的行,然后再对它们的第三列进行一个计算(比如加减)。

[复制链接]

新手

10 麦片

财富积分


050


1

主题

1

帖子

0

最佳答案
发表于 2020-7-20 09:21:39 | 显示全部楼层 |阅读模式
我现在有两个n*3的矩阵,怎么筛选出它们前两列相同的行,然后再对它们的第三列进行一个计算(比如加减)。

                               
登录/注册后可看大图

                               
登录/注册后可看大图

就比如第一个矩阵的第303行和第二个矩阵的第一行。
回复主题 已获打赏: 0 积分

举报

MATLAB 图像处理与计算机视觉
版块优秀回答者

中级

515 麦片

财富积分


5001500


71

主题

1642

帖子

111

最佳答案
  • 关注者: 36
发表于 2020-7-29 09:39:00 | 显示全部楼层
  1. x = [1,1,2;
  2.      1,2,3;
  3.      1,2,1;
  4.      1,3,3;
  5.      2,1,1;
  6.      2,1,2;
  7.      2,2,2];
  8. [x_unique,ia] = unique(x(:,1:2),'rows');
  9. n = length(ia);
  10. ret = zeros(n,1);
  11. len = size(x,1);
  12. for i=1:n-1
  13.     ret(i) = sum( x(ia(i):(ia(i+1)-1),3) );
  14. end
  15. ret(n) = sum(x(ia(n):len,3))
复制代码
回复此楼 已获打赏: 0 积分

举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

快速回复 返回顶部 返回列表