r - 如何使用 R 中的函数创建混淆矩阵
问题描述
我创建了以下数据集:
actual <- c(1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0)
predicted <- c(1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0)
以下代码有效,但我想使用一个函数来创建混淆矩阵:
#create new data frame
new_data <- data.frame(actual, predicted)
new_data["class"] <- ifelse(new_data["actual"]==0 & new_data["predicted"]==0, "TN",
ifelse(new_data["actual"]==0 & new_data["predicted"]==1, "FP",
ifelse(new_data["actual"]==1 & new_data["predicted"]==0, "FN", "TP")))
(conf.val <- table(new_data["class"]))
这样做的代码可能是什么?
解决方案
插入符号库提供了大量的机器学习方法
library(caret)
actual <- as.factor(c(1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0))
predicted <- as.factor(c(1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0))
caret::confusionMatrix(data = predicted, actual, positive="1")
推荐阅读
- c++ - STL 列出调用类的函数
- c++ - 关键字 - 内联 - 真的强制编译器在多个地方替换它吗?
- java - 使用 javax.mail 发送电子邮件:较新版本的库带来意外错误
- angular - 无法启动 Angular 项目 git 的问题
- php - WP All 导入选择图像 ID
- tensorflow - 安装期间的Tensorflow哈希错误(pip)
- python - re.sub 到 python 列表中的多个值,没有寄存器意义
- javascript - 使用 REST API 的下拉列表未显示(在控制台日志中显示)
- python - PHP - 在远程 IP 地址上执行 python 脚本并获取结果
- z-notation - 使用 eclipse 的信用卡的 object-Z 规范