Q:
当需要将某一矩阵的每一行或者每一列都减去一个行向量或者列向量时(数组维数大,大量重复操作),可以使用什么方法?
A:
因为MATLAB中加减运算需要两者维数相同,所以有两种思路一种是提取矩阵的每一行或者列进行运算,另一种是构造一个每一行或者列都一样的矩阵进行运算。
前一种,使用循环可以提取出向量,但在matlab中循环效率低,推荐是使用矩阵运算,所以我们转向后一种方法。
后一种,在矩阵运算上没什么问题。关键在于如何避免使用循环去构造矩阵。这里可以使用repmat函数,相较于循环该函数效率更高。