是否有更简单的命令来计算矢量投影? 我改为使用以下内容:
x = np.array([ 3, -4, 0])
y = np.array([10, 5, -6])
z=float(np.dot(x, y)
z1=float(np.dot(x, x)
z2=np.sqrt(z1)
z3=(z/z2**2)
x*z3
答案 0 :(得分:1)
也许,也许,这就是您真正想要的:
np.dot(x, y) / np.linalg.norm(y)
这应该给出向量x
在向量y
上的投影-参见https://en.wikipedia.org/wiki/Vector_projection。另外,如果您要计算y
在x
上的投影,请在上式的分母(y
)中将x
替换为norm
。
答案 1 :(得分:0)