【问题标题】:Calculating the norm of each row in a matrix [duplicate]计算矩阵中每一行的范数
【发布时间】:2013-08-20 08:11:03
【问题描述】:

我有一个 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循环?

谢谢

【问题讨论】:

    标签: matlab math matrix norm


    【解决方案1】:

    你可以这样做:

    sqrt(sum(A.^2, 2))
    

    您的方法返回一个 1x3,而这将返回一个 3x1。所以如果你愿意,你可以转置它,但我怀疑你真的需要。

    【讨论】:

    • 实际上我希望它像您一样 3x1,在我的方法中,我在 for 循环之前准备了一个列向量。谢谢
    猜你喜欢
    • 2019-02-13
    • 1970-01-01
    • 2021-01-01
    • 2021-07-24
    • 1970-01-01
    • 2017-09-23
    • 1970-01-01
    • 2014-03-15
    • 1970-01-01
    相关资源
    最近更新 更多