我想在多个列中应用插入符号的confusionMatrix函数,将结果保存在数据框中。
我有两个格式相同的数据框-“实际”和“预测”。他们看起来像这样:
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与线性模型的输出进行了类似的操作,但是这里的输入有很大的不同,而且我还找不到能够使它工作的方法。
非常感谢
答案 0 :(得分:1)
a <- list()
for (i in 1:ncol(predictions))
{
a[[i]] <- confusionMatrix(predictions[,i], actuals[,i])
}
print(a)