作业帮 > 综合 > 作业

如何在matlab下提取矩阵中若干个最大值的点

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/20 21:01:21
如何在matlab下提取矩阵中若干个最大值的点
例如矩阵[6,7,3,2,5
5,3,6,4,2
7,9,5,3,2
1,2,3,4,5
8,9,10,5,4]
我想提取矩阵中25个元素的最大的五个值,并去掉其他的,最终形成矩阵[00000,00000,79000,00000,89 10 00]请问该如何处理?
a=[6,7,3,2,5
5,3,6,4,2
7,9,5,3,2
1,2,3,4,5
8,9,10,5,4]
[x,y]=sort(a(:))
a(y(1:end-5))=0
a =
0 7 0 0 0
0 0 0 0 0
0 9 0 0 0
0 0 0 0 0
8 9 10 0 0
因为你的矩阵中有两个7,程序自动去了第一个7,所以和你的结果有点不一样!
再问: 谢谢!那如果想提取最小的五个数呢?
再答: 方法是一样的,你自己试试吧 a=[6,7,3,2,5 5,3,6,4,2 7,9,5,3,2 1,2,3,4,5 8,9,10,5,4] [x,y]=sort(a(:)) a(y(end-5:end))=0