1

如果我有一个简单的矩阵

A = [1 3 ; 4 3 ; 6 12]

然后走

A(:,3) = (A(:,1)+A(:,2))

那么第 3 列中的每个元素都将包含第 1 列和第 2 列中对应元素的总和。

然而,当我去

A(:,3) = (A(:,1)/A(:,2))

我收到一条错误消息Subscripted assignment dimension mismatch.Google 搜索没有显示对此错误消息的启发性解释。这里有人可以帮忙吗?

4

1 回答 1

8

A(:,3) = (A(:,1)/A(:,2)) 实际上是在做矩阵除法。

我猜你想划分向量的相应元素。在这种情况下,您需要在分区中添加一个点。所以你想要的代码会读...

A(:,3) = (A(:,1)./A(:,2))

请参阅http://www.mathworks.com/help/matlab/ref/arithmeticoperators.html以获得很好的解释。

于 2013-01-21T03:10:00.430 回答