删除data.table中仅包含NA值的行

时间:2016-10-23 11:33:05

标签: r data.table

我有一个与删除data.table中的行有关的问题 如何删除仅包含NA值的data.table中的行? 这里有一些解决方案但只有在它只包含数值时才有效。但我的数据也包含特征值,所以我不能使用像sumRows这样的东西。 谢谢你的帮助

2 个答案:

答案 0 :(得分:3)

我们可以将Reduceis.na

一起使用
dt[dt[,!Reduce(`&`, lapply(.SD, is.na))]]

数据

dt <- data.table(col1 = c(1, NA, 2, NA, 3), col2 = c(2, NA, 3, 4, 5))

答案 1 :(得分:1)

dt[apply(dt,1,function(r){!all(is.na(r))}),]