簡體   English   中英

計算列的范數作為矩陣中的向量

[英]Calculating norm of columns as vectors in a matrix

我正在尋找計算列的范數作為矩陣中的向量的最佳方法。 我現在的代碼是這樣的,但我相信它可以做得更好(可能是numpy?):

import numpy as np
def norm(a):
    ret=np.zeros(a.shape[1])
    for i in range(a.shape[1]):
        ret[i]=np.linalg.norm(a[:,i])
    return ret

a=np.array([[1,3],[2,4]])
print norm(a)

哪個回報:

[ 2.23606798  5.        ]

謝謝。

您可以使用ufuncs計算規范:

np.sqrt(np.sum(a*a, axis=0))

使用numpy的直接解決方案:

x = np.linalg.norm(a, axis=0)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM