r - 如何用 R 中的曼哈顿距离计算 kNN?
问题描述
在程序中距离是欧几里得(默认情况下)。如何将其更改为曼哈顿?
代码:
wdbc <- read.table(file.choose(), sep=",")
View(wdbc)
wdbc <- wdbc[, -1]
data_norm <- function(x) {((x - min(x))/ (max(x)- min(x)))}
wdbc_norm <- as.data.frame(lapply(wdbc[, -1], data_norm))
summary(wdbc[,2:5])
summary(wdbc_norm[,1:4]) wdbc_train <- wdbc_norm[1:450,]
wdbc_test <- wdbc_norm[451:569,]
library(class)
wdbc_pred <- knn(wdbc_train, wdbc_test, wdbc[1:450, 1], k=21)
table(wdbc_pred, wdbc[451:569,1])
library(knnGarden)
wdbc_pred <- knn(wdbc_train, wdbc_test, wdbc[1:450, 1], k=21)
table(wdbc_pred, wdbc[451:569,1])
解决方案
推荐阅读
- regex - 搜索带有特殊字符的字符串 linux
- python - TensorFlow - 使用批处理数据验证准确性
- node.js - nodejs sinon如何存根内联需要来自类的对象
- javascript - 在 iframe 中访问调用堆栈
- bootstrap-4 - 验证器消息和图标位于 Angular Mdb 中输入元素的中心
- python - 如何将 conftest.py 中的 webdriver 对象合并到 selenium 中
- php - 通过php中的多个选项卡维护多个会话
- php - 将数据从 MySQL 水平加载到表中
- amazon-ec2 - 在 ec2 实例上配置 syslog-ng 服务器
- python - 如何使用python根据字段值从xml部分中提取内容