我有一个整数值矩阵,x 轴代表不同的日期,y 轴代表一天中的小时。每个单元格中都有一个数字,表示一天中有多少小时对应于当天的某些标准。这就是为什么我需要每小时计算一次,而不仅仅是在时间结束时。
整个问题是我必须选择 5 个最好的日子,它们的数量最少(对应的最少)。所以基本上在矩阵中,这意味着在行中选择 5 个最低的数字,并记住最小值所在列的索引。(我需要知道它发生在哪一天)。因为随着时间的推移,每次都可能有 5 天不同的时间,所以对整张桌子进行排序会变得一团糟。
我可以通过取前 5 个数字让它变得非常丑陋,然后当我在途中发现较小的一个时,我会忘记 5 中最大的一个,并记住新的列的索引。然而,这个解决方案似乎很草率。Matlab中必须有更好的方法来解决这个问题。
有什么想法、功能可以让我的生活更轻松吗?
1 1 0 1 1 1 0 0 1 1
1 2 1 2 2 1 0 1 2 2
例如,在从 1-10 索引的这两行中,在第一行中它应该返回第 3、7、8 列和另外两列并不真正关心哪一列。在第二行中,它应该返回第 7、8、6、1、3 列。