我想只保留表中的这些行,这些行在特定列中至少具有NA值。我需要的解决方案可以使用不同数量的列。
我有这样的代码:
library(data.table)
cols<-c("colname1","colname2")
DT<-DT[rowSums(is.na(DT[,cols,with=F])) == 2]
我在这段代码中遇到了这样的错误:
DT [,c(“colname1”,“colname2”)出错,带= F]:
维数不正确
有人可以帮我解决这个问题吗?
我找到了正确的解决方案,但我仍然不知道为什么第一个解决方案不起作用。
cols<-c("colname1","colname2")
DT<-DT[eval(rowSums(is.na(DT[,cols,with=F])) == length(cols))]
有人能告诉我为什么我的第一段代码不起作用吗?
答案 0 :(得分:0)
你应该能够做到这一点:
仅保留两个相等的行
DT <- DT[(is.na("colname1") == T & is.na("colname2") == T), ]