我有一個矩陣X,我試圖用KNN和皮爾遜相關性度量。是否有可能使用皮爾遜相關性作爲sklearn度量標準?我已經試過這樣的事情:在sklearn中可以使用皮爾遜相關度量嗎?
def pearson_calc(M):
P = (1 - np.array([[pearsonr(a,b)[0] for a in M] for b in M]))
return P
nbrs = NearestNeighbors(n_neighbors=4, metric=pearson_calc)
nbrs.fit(X)
knbrs = nbrs.kneighbors(X)
然而,當我碰到下面的錯誤,這並不工作:
pearson_affinity() takes 1 positional argument but 2 were given
我假設pearson_calc功能是錯誤的。也許它需要一個a,b參數而不是矩陣。