Matlab - 将特定条目乘以多维矩阵中的标量

Matlab - Multiply specific entries by a scalar in multidimensional matrix

我在将多维矩阵中的特定值乘以标量时遇到问题。我的矩阵具有以下维度:

size(comDatabe) = 5   10   3   397   10

三维是一个x-y-z坐标系。出了点问题,现在我的 y 轴被一个主题颠倒了(最后一个维度中的 10 个中有第 8 个,正值是负值,反之亦然)。我想通过将所有这些 y 值乘以 -1 来解决这个问题。我尝试做这些事情,但没有用:

comDatabe(:,:,2,:,8) = comDatabe(:,:,-2,:,8)
comDatabe(:,:,[1 2 3],:,8) = comDatabe(:,:,[1 -1*2 3],:,8)

如何在我的多维矩阵中将这个特定的 "column" 乘以 -1?

呃,为什么乘索引而不是值?

我试过这个: comDatabe(:,:,[1 2 3],:,8) = comDatabe(:,:,[1 2 3],:,8)*-1

它奏效了。