This question already has answers here:
applying norm function to rows of matrix - Matlab [duplicate]
(3 个回答)
7年前关闭。
我有一个 Nx3 矩阵(A),列分别是 X、Y、Z。我想计算每行的 sqrt(X^2+Y^2+Z^2) 范数。我为此做了一个 for 循环:
有没有其他方法可以避免for循环?
谢谢
您的方法返回 1x3,其中返回 3x1。所以如果你愿意,你可以转置它,但我怀疑你真的需要。
(3 个回答)
7年前关闭。
我有一个 Nx3 矩阵(A),列分别是 X、Y、Z。我想计算每行的 sqrt(X^2+Y^2+Z^2) 范数。我为此做了一个 for 循环:
for i = 1:length(A)
Result(i) = norm(A(i,:))
end
有没有其他方法可以避免for循环?
谢谢
最佳答案
你可以这样做:
sqrt(sum(A.^2, 2))
您的方法返回 1x3,其中返回 3x1。所以如果你愿意,你可以转置它,但我怀疑你真的需要。
关于matlab - 计算矩阵中每一行的范数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18330033/
10-10 18:52