R knncat 是否规范化数据?
R Does knncat normalise data?
我正在对一些数据进行 knn 分析。我有分类数据(超过 2 个因素)和连续数据。我找到了一个解决这种情况的包 (knncat),但几乎没有文档解释它的实际工作原理。
我希望使用交叉验证(我相信这可以通过简单地不提供训练数据来完成)并且我 运行 遇到了问题。我不知道这个包如何规范化数据。我不知道是否应该在使用之前对数字数据进行归一化,或者我是否应该保持原样。
有谁知道 knncat 是如何处理这个的?或者有人能推荐一种更好的方法或包来处理混合分类和数字数据的 KNN 吗?
检查函数正在做什么的最好方法是查看函数内部
body,你可以这样做:
getAnywhere(knncat)
据我所知,那里没有缩放或居中数据。
关于第二个问题,分类数据的处理方式是
创建虚拟变量(knncat 实际上就是这样做的)。但是你
可以自己创建虚拟变量。
例如,
data$cat.var.dummy <- as.integer(as.factor(data$cat.var))
或者你可以使用 Caret 包,它有方法可以做到这一点
嗯,dummyVars
我正在对一些数据进行 knn 分析。我有分类数据(超过 2 个因素)和连续数据。我找到了一个解决这种情况的包 (knncat),但几乎没有文档解释它的实际工作原理。
我希望使用交叉验证(我相信这可以通过简单地不提供训练数据来完成)并且我 运行 遇到了问题。我不知道这个包如何规范化数据。我不知道是否应该在使用之前对数字数据进行归一化,或者我是否应该保持原样。
有谁知道 knncat 是如何处理这个的?或者有人能推荐一种更好的方法或包来处理混合分类和数字数据的 KNN 吗?
检查函数正在做什么的最好方法是查看函数内部 body,你可以这样做:
getAnywhere(knncat)
据我所知,那里没有缩放或居中数据。
关于第二个问题,分类数据的处理方式是 创建虚拟变量(knncat 实际上就是这样做的)。但是你 可以自己创建虚拟变量。
例如,
data$cat.var.dummy <- as.integer(as.factor(data$cat.var))
或者你可以使用 Caret 包,它有方法可以做到这一点 嗯,dummyVars