12

多くの列を含むdata.frameがあります。これらの4つの列にNAがない行を保持したいと思います。複雑なのは、NAを含むことが許可されている他の行があるため、complete.casesまたはis.naを使用できないという事実から生じます。これを行うための最も効率的な方法は何ですか?

4

1 に答える 1

17

引き続き使用できますcomplete.cases()。目的の列(以下の例では列1:4)に適用してから、返されるブールベクトルを使用して、data.frame全体から有効な行を選択します。

set.seed(4)
x <- as.data.frame(replicate(6, sample(c(1:10,NA))))
x[complete.cases(x[1:4]),]
#    V1 V2 V3 V4 V5 V6
# 1   7  4  6  8 10  5
# 2   1  2  5  5  1  2
# 5   6  8  4 10  6  6
# 6   2  6  9  3  4  4
# 7   4  3  3  1  2  1
# 9   8  5  2  7  7  3
# 10 10 10  1  2  5 NA
于 2012-10-22T15:52:17.940 に答える