如何跟踪数据框中的哪些行在R中具有NA值

时间:2016-02-26 14:12:46

标签: r csv dataframe rows na

我现在正在处理一些非常大的数据帧,并且为了缩短计算,我需要排除具有NA值的行,但是在计算和创建新数据帧之后我需要将它们带回来(到新的数据帧) )。有没有可能跟踪我排除哪些行?

例如:

   X1 X2 X3 X4
1  3  4  5  4
2  3  3  3  4
3  NA NA NA NA
4  4  3  3  2

所以我想要的是追求" complete.cases"数字3,表示排除了NA的行号。是否可以不添加带编号的额外列?

2 个答案:

答案 0 :(得分:2)

您可以使用na.omit,然后attr(na.omit(df), "na.action")给出3。

另外,

rownames(df)[!complete.cases(df)]
# [1] "3"

答案 1 :(得分:1)

要返回包含至少一个NA的行的索引,我们也可以使用:

rownames(df[rowSums(is.na(df)) > 0,])
# [1] "3"