我是python的新手,正在尝试执行以下代码:
from scipy.spatial.distance import correlation
u1=np.array([10])
u2=np.array([20])
correlation(u1,u2)
但是我要变得难为情了,为什么?
RuntimeWarning: invalid value encountered in double_scalars
dist = 1.0 - np.dot(um, vm) / (norm(um) * norm(vm))
output : nan
请帮助我。
答案 0 :(得分:2)
我认为您误解了相关性的概念。
相关性表示两个或多个变量一起波动的程度。
您仅传递单个值,因此它将无法确定相关性。 您需要传递具有多个值的列表,以便能够找到它们之间的相关性。
from scipy.spatial.distance import correlation
u1=np.array([10,14,17])
u2=np.array([20,18,12])
print(correlation(u1,u2))
输出:
1.934719542804484