我现在正在处理一些非常大的数据帧,并且为了缩短计算,我需要排除具有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的行号。是否可以不添加带编号的额外列?
答案 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"