如何使用 numpy 计算向量的大小
给定向量 x 的范数计算如下:
||x|| = √ x 1 2 + x 2 2 + x 3 2 + … + x n 2
例如,假设 x = [3, 7, 4]
幅度计算如下:
||x|| = √ 3 2 + 7 2 + 4 2 = √ 74 = 8.602
您可以使用 Python 中的NumPy包使用两种方法之一来计算向量的大小:
方法1:使用linalg.norm()
n.p. linalg . norm (v)
方法 2:使用自定义 NumPy 函数
n.p. sqrt ( x.dot (x))
两种方法都会返回完全相同的结果,但第二种方法往往要快得多,特别是对于大向量。
以下示例展示了如何在实践中使用每种方法。
方法1:使用linalg.norm()
以下代码演示了如何使用np.linalg.norm()函数来计算给定向量的大小:
import numpy as np #definevector x = np. array ([3, 6, 6, 4, 8, 12, 13]) #calculate magnitude of vector n.p. linalg . norm (x) 21.77154105707724
矢量的大小是21.77 。
方法 2:使用自定义 NumPy 函数
以下代码演示了如何使用自定义 NumPy 函数来计算给定向量的大小:
import numpy as np #definevector x = np. array ([3, 6, 6, 4, 8, 12, 13]) #calculate magnitude of vector n.p. sqrt ( x.dot (x)) 21.77154105707724
矢量的大小是21.77 。
请注意,这与我们使用之前的方法计算出的值相匹配。
其他资源
以下教程解释了如何使用 NumPy 执行其他常见操作: