【发布时间】:2019-03-05 02:29:31
【问题描述】:
我正在尝试使用 KNN 包来估算我在数据框中的缺失值。我的数据框列具有不同的范围,即其中一些列的价值比其他列大得多。
我的理解是KNN算法使用欧几里得距离来确定最近邻。我的疑问是我是否应该在将数据提供给算法之前对其进行规范化,或者默认情况下是否应该这样做?
【问题讨论】:
标签: python pandas machine-learning imputation fancyimpute
我正在尝试使用 KNN 包来估算我在数据框中的缺失值。我的数据框列具有不同的范围,即其中一些列的价值比其他列大得多。
我的理解是KNN算法使用欧几里得距离来确定最近邻。我的疑问是我是否应该在将数据提供给算法之前对其进行规范化,或者默认情况下是否应该这样做?
【问题讨论】:
标签: python pandas machine-learning imputation fancyimpute
您可以在代码中的fancyimpute.knn.KNN 类中看到,它采用属性normalizer,可以使用fit() 和transform() 方法将其设置为任何对象。
默认情况下,它设置为None,因此您必须显式创建规范化器并将其提供给 KNN 类对象。
【讨论】: