矩阵中元素的加权总和-Matlab?

| 我有两个
50 x 6
矩阵,分别是
A
B
。我想为矩阵中列的每个元素分配权重-将更大的权重分配给在同一列中较早出现的元素,而将更少的权重分配给在同一列中较晚出现的元素...同样对于所有6列。像这样:
cumsum(weight(row)*(A(row,col)-B(row,col)); % cumsum is for cumulative sum of matrix
我们如何不使用循环就可以有效地做到这一点?     
已邀请:
如果您将权重向量
w
作为
50x1
向量,则可以将代码重写为
cumsum(repmat(w,1,6).*(A-B))
顺便说一句,我不知道您为什么要在标量中循环运行
cumsum
...它没有任何作用。我假设您的意思就是要对整个矩阵进行处理。默认情况下,在矩阵上调用“ 7”将沿每一列进行操作。如果需要沿行进行操作,则应使用可选的维度参数“ 9”来调用它,其中“ 10”是您拥有的任何矩阵。     

要回复问题请先登录注册