Python 使用k个最近邻时,是否有方法检索;“邻居”;你用的是什么?
我想找到一种方法来确定knn算法中实际使用了哪些邻居,这样我就可以深入研究与我的特征相似的数据行 下面是一个数据集示例,我将其分为预测模型的训练集和测试集:Python 使用k个最近邻时,是否有方法检索;“邻居”;你用的是什么?,python,dataframe,machine-learning,prediction,knn,Python,Dataframe,Machine Learning,Prediction,Knn,我想找到一种方法来确定knn算法中实际使用了哪些邻居,这样我就可以深入研究与我的特征相似的数据行 下面是一个数据集示例,我将其分为预测模型的训练集和测试集: Player PER VORP WS Fabricio Oberto 11.9 1.0 4.1 Eddie Johnson 16.5 1.7 4.8 Tim Legler 15.9 2.0 6.8 Ersan Ilyasova 14.3 0.7
Player PER VORP WS
Fabricio Oberto 11.9 1.0 4.1
Eddie Johnson 16.5 1.7 4.8
Tim Legler 15.9 2.0 6.8
Ersan Ilyasova 14.3 0.7 3.8
Kevin Love 25.4 3.5 10.0
Tim Hardaway 20.6 5.1 11.7
Frank Brickowsk 8.6 -0.2 1.6
etc....
下面是我的knn算法代码示例:
features = ['PER','VORP']
knn = KNeighborsRegressor(n_neighbors=5, algorithm='brute')
knn.fit(train[features], train['WS'])
predictions = knn.predict(test[features])
现在,我知道该算法将迭代每一行,并根据我指定的目标特征中的5个最近邻进行每个目标预测
我想知道哪5个n_邻居实际用于确定我的目标特征?在这种情况下,在确定目标时实际使用了哪些玩家
有没有办法获得分析中每行使用的5个邻居(又名玩家)的列表?
knn。kneighbors
将返回相应最近邻居的数组。谢谢Nicolas。我还要补充一点,knn.kneighbors实际上返回2个数组,第一个数组是邻居到初始目标的距离,第二个数组是对应邻居的索引。谢谢你给我指明了正确的方向!