在 Matlab 中为矩阵中的每个值加一

Add one to every value in a matrix in Matlab

说我要

1 2 3 
4 5 6
7 8 9

成为

2 3 4
5 6 7
8 9 10

假设第一个矩阵是mat。我 认为 mat.+1 会起作用,但这给了

Unexpected MATLAB operator.

有什么好的方法吗?

一种解决方案是使用 ones 创建一个 1 矩阵并相加。使用 size 传递维度:

new_mat = mat + ones(size(mat))

您也可以使用repmat(1,size(mat))代替ones,这样可以创建填充不同值的矩阵。

只需添加1,即可将标量添加到矩阵:

A = [1 2 3 
     4 5 6
     7 8 9]

B = A + 1