跨多对列应用 confusionMatrix R 函数,将输出保存在列表或 tidy df 中
Apply confusionMatrix R function across multiple pairs of columns, saving output in lists or tidy df
我想跨多个列应用 caret 的 confusionMatrix 函数,将结果保存在数据框中。
我有两个相同格式的数据框 - "actuals" 和 "predictions"。它们看起来像这样:
x1 x2 x3 x4
N N S E
E W E E
N W E E
等...对于很多行,每列有4个级别,还有很多列
我想使用 confusionMatrix 比较两个数据框的相应列。我可以逐列执行此操作,例如从第 1 列开始:
confusionMatrix(predictions[,1], actuals[,1])
但我不想逐一查看每一列,而是想将 confusionMatrix 应用于两个数据框中的所有对应列。
理想情况下,我希望将输出保存在某种列表或数据框中,以便我可以轻松地从 confusionMatrix(例如 kappa 或灵敏度)中提取特定输出以进行所有比较。我已经使用 purrr 和 broom 对线性模型的输出做了类似的事情,但是这里的输入完全不同,我一直没能找到一种方法来让它工作。
非常感谢
a <- list()
for (i in 1:ncol(predictions))
{
a[[i]] <- confusionMatrix(predictions[,i], actuals[,i])
}
print(a)
我想跨多个列应用 caret 的 confusionMatrix 函数,将结果保存在数据框中。
我有两个相同格式的数据框 - "actuals" 和 "predictions"。它们看起来像这样:
x1 x2 x3 x4
N N S E
E W E E
N W E E
等...对于很多行,每列有4个级别,还有很多列
我想使用 confusionMatrix 比较两个数据框的相应列。我可以逐列执行此操作,例如从第 1 列开始:
confusionMatrix(predictions[,1], actuals[,1])
但我不想逐一查看每一列,而是想将 confusionMatrix 应用于两个数据框中的所有对应列。
理想情况下,我希望将输出保存在某种列表或数据框中,以便我可以轻松地从 confusionMatrix(例如 kappa 或灵敏度)中提取特定输出以进行所有比较。我已经使用 purrr 和 broom 对线性模型的输出做了类似的事情,但是这里的输入完全不同,我一直没能找到一种方法来让它工作。
非常感谢
a <- list()
for (i in 1:ncol(predictions))
{
a[[i]] <- confusionMatrix(predictions[,i], actuals[,i])
}
print(a)