r - 在 R 中进行 knn 分类后,如何获得每个测试用例的预测列表?

标签 r classification knn

运行后 knn (R)[ http://www.r-project.org/] 中的分类有没有办法列出对每个测试用例所做的预测?

我知道如何获得混淆矩阵,但我也想要测试阶段的详细结果,而不仅仅是摘要。

我是否必须通过模型运行每个案例,就像在进行模型开发后预测一样?或者我需要的信息是测试阶段的输出?

最佳答案

我糊涂了。这似乎正是knn返回。改编 ?knn 帮助页面中的示例

library(class)
train <- rbind(iris3[1:25,,1], iris3[1:25,,2], iris3[1:25,,3])
test <- rbind(iris3[26:50,,1], iris3[26:50,,2], iris3[26:50,,3])
cl <- factor(c(rep("s",25), rep("c",25), rep("v",25)))
fit <- knn(train, test, cl, k = 3, prob=TRUE)

如果我将结果与测试数据结合起来,我会得到
head(data.frame(test, pred=fit, prob=attr(fit, "prob")))

#   Sepal.L. Sepal.W. Petal.L. Petal.W. pred prob
# 1      5.0      3.0      1.6      0.2    s    1
# 2      5.0      3.4      1.6      0.4    s    1
# 3      5.2      3.5      1.5      0.2    s    1
# 4      5.2      3.4      1.4      0.2    s    1
# 5      4.7      3.2      1.6      0.2    s    1
# 6      4.8      3.1      1.6      0.2    s    1

所以每个 test 都有一个预测排。

关于r - 在 R 中进行 knn 分类后,如何获得每个测试用例的预测列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25630835/

相关文章:

neo4j - 余弦相似度 - 作为推荐引擎的缺点?

java - OCR算法改进

r - 如何使用r省略data.frame中单词的倒数

r - 使用 ggsave/sprintf 出现奇怪的错误消息

r - 更改颜色中线 ggplot geom_boxplot()

machine-learning - scikit、分类列、决策树

r - 获取提取的单词的上下文

r - 混淆矩阵错误: the data and reference factors must have the same number of levels

python - 从 sklearn 的 MLPClassifier 中检索最终的隐藏激活层输出

machine-learning - 计算 KNN 的欧氏距离