Python - 如何找出两个向量之间的相关性?
给定两个向量 X 和 Y,我需要找出它们之间的相关性,也就是它们的线性依赖或独立性。这两个向量的维度是相同的。结果应该是一个浮点数,范围在 [-1.0 .. 1.0] 之间。
举个例子:
X=[-1, 2, 0]
Y=[ 4, 2, -0.3]
找到 y = cor(X,Y),使得 y 属于 [-1.0 .. 1.0]。
这应该是一个简单的构造,涉及到列表推导。不允许使用外部库。
更新:好的,如果点积就足够了,那么这是我的解决方案:
nX = 1/(sum([x*x for x in X]) ** 0.5)
nY = 1/(sum([y*y for y in Y]) ** 0.5)
cor = sum([(x*nX)*(y*nY) for x,y in zip(X,Y) ])
对吧?