首页 > 解决方案 > 如何在 R 中的所有列上循环代码?

问题描述

包裹:

install.packages("pROC") 

library(pROC)

数据集如下所示:Dataset #Apologies for not include the actual dataset

我正在尝试在从第 3 列开始的所有列中应用 roc() 代码:

roc1 <- roc(df$Immunoscore,df$col_name)

目前,我正在考虑做一个lapply方法。

list_of_AUC <- lapply(3:ncol, function(i){

roc(RD0161_Final$Immunoscore, RD0161_Final[,i])})

我遇到了一个错误:

3:ncol 中的错误:NA/NaN 参数

有没有更好的方法?请帮忙!

标签: rfor-looprocaucproc-r-package

解决方案


这对你有用吗?

lapply(RD0161_Final[,3:9], function(i) {
      roc(RD0161_Final[,2] ~ i)
}

或者,您可以指定列名

lapply(RD0161_Final[,3:9], function(i) {
      roc(RD0161_Final[["Immunoscore"]] ~ i)
}

推荐阅读