如何对2列具有值的数据框进行子集化?
例如:
A B
1 2
3
5 6
8
变为
A B
1 2
5 6
答案 0 :(得分:2)
最简单的方法是使用na.omit
(如果您定位的是NA值)。
请仔细阅读以下R代码段:
> x
a b
1 1 2
2 3 NA
3 5 6
4 NA 8
> na.omit(x)
a b
1 1 2
3 5 6
另一种方法是使用complete.cases
,如下所示:
> x[complete.cases(x),]
a b
1 1 2
3 5 6
您还可以使用na.exclude
,如下所示:
> na.exclude(x)
a b
1 1 2
3 5 6
希望它适合你!
答案 1 :(得分:2)
> subset(df, !is.na(df$A) & !is.na(df$B))
> df[!is.na(df$A) & !is.na(df$B),]
> df[!is.na(rowSums(df)),]
> na.omit(df)
所有等价物