4
我有一个大小为m x n的矩阵A和另一个大小为1 x n的矩阵b(在Matlab中)。矩阵b是这样的:它由1的序列组成,然后是2的序列,然后是3的序列等,直到某个值k。如何在Matlab上做矩阵操作?
(例如B = [1 1 1 2 2 2 3 4 4]中,n = 9)
我想利用A,以及用于在每一行,选择在每个段中的最大值,回零该子序列中的所有其他内容。
因此,例如,对于一个行A = [0 -1 1 2 3 4 1 3 4 5]),我会得到
[0 0 2 0 4 0 3 0 5]
如果A(m> 1)中有多行,这应该发生在每行中。
我可以很容易地使用for循环,但它工作速度非常慢,因为我循环m和n。
是否有一个“oneliner”在Matlab中做,或者简单的工作很快?
谢谢!但不能用零填充。 – kloop 2014-09-22 16:34:45
@kloop对不起,我读得太快了。对它进行工作 – 2014-09-22 16:35:17
@kloop更正了 – 2014-09-22 16:38:06