[已解决] 请问怎么让具有两列元素的矩阵按照行之和的大小顺序排列?

[复制链接]
yiyiyiyiyiiiii 发表于 6 天前
本帖最后由 yiyiyiyiyiiiii 于 2022-8-4 14:28 编辑

比如矩阵:A=[1,2;
6,4;
2,7];
A每行的和形成的矩阵就是[3,12,9];
想要的效果是排序之后为
[1,2;
2,7;
6,4];
我看到sort是会对每列排序,达不成这样的效果,请问有什么简单直接一些的方法吗?

最佳答案


lyqmath 发表于 6 天前


可以考虑做行索引排序
更多的可参考
《视觉大数据智能分析算法实战》[刘衍琦等]

  1. A=[1,2;
  2. 6,4;
  3. 2,7]
  4. s = sum(A,2);
  5. [~,ind]=sort(s);
  6. B = A(ind,:)
复制代码


  1. A =

  2.      1     2
  3.      6     4
  4.      2     7


  5. B =

  6.      1     2
  7.      2     7
  8.      6     4

  9. >>
复制代码


回复此楼

2 条回复


lyqmath 发表于 6 天前


可以考虑做行索引排序
更多的可参考
《视觉大数据智能分析算法实战》[刘衍琦等]

  1. A=[1,2;
  2. 6,4;
  3. 2,7]
  4. s = sum(A,2);
  5. [~,ind]=sort(s);
  6. B = A(ind,:)
复制代码


  1. A =

  2.      1     2
  3.      6     4
  4.      2     7


  5. B =

  6.      1     2
  7.      2     7
  8.      6     4

  9. >>
复制代码


回复此楼

yiyiyiyiyiiiii 发表于 6 天前
lyqmath 发表于 2022-8-4 15:43
可以考虑做行索引排序
更多的可参考
《视觉大数据智能分析算法实战》[刘衍琦等] ...

谢谢!很简洁有效!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

相关帖子
相关文章
热门教程
站长推荐
快速回复 返回顶部 返回列表