如何从numpy数组中获取单位向量

28

假设我有一个向量v,想要得到单位向量,即v的长度为1.0。是否有一种直接从Numpy获取它的方法?

我想要像这样的结果:

import numpy as np
v=np.arrange(3)
v_hat = v.norm()

与其

length = np.linalg.norm(v)
v_hat = v / length

1
是的,我看到了那一个,但是希望自那以后有更简单的方法。 - CodingFrog
3
v /= np.linalg.norm(v) 可以简洁地表示将向量v归一化。 - Jussi Nurminen
1个回答

37

numpy中没有这样的函数。只需将向量除以它的长度即可。

v_hat = v / (v**2).sum()**0.5
或者
v_hat = v / np.linalg.norm(v)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接