Цель : Найти индекс столбца первого появления в файле * как в Excel Ctrl + F
# EXPECTED RESULT -- INDEX
[1] 2
# SAMPLE DT
DT <- data.table(A = c(NA,NA,NA,NA,NA),
B = c(NA,"APPLE",NA,NA,NA),
C = c(NA,NA,NA,NA,NA),
D = c(NA,NA,NA,"APPLE",NA))
lx <- grep("^APPLE$", sapply(colnames(DT), function(x) grep("^APPLE$",DT[,x],value = TRUE)))[1]
CURRENT METHOD
lx <- grep("^APPLE$", sapply(colnames(DT), function(x) grep("^APPLE",setDF(DT)[,x],value = TRUE)))[1]
Проблема не работает, если нетустановить setDF ()
Error in `[.data.table`(DT, , x) :
j (the 2nd argument inside [...]) is a single symbol but column name 'x' is not found. Perhaps you intended DT[, ..x]. This difference to data.frame is deliberate and explained in FAQ 1.1.
Как получить ожидаемый результат без переключения на data.frame (нет setDF()
)?