从R中的矩阵中提取完整的配对值(非NA)

时间:2015-03-08 21:26:58

标签: r

如果这是基本的或之前已经回答过,我道歉,但尽管进行了广泛的搜索,我还是找不到我的问题的答案。我对编程也很陌生,所以请在这里跟我说。

我有一堆25乘2的数据矩阵,但有些单元格有NA值。我希望提取仅由完整配对值组成的矩阵子集(因此没有NA值)。

所以说我有:

3.6    4.2
9.2    8.4
4.8    NA
1.1    8.2
NA     11.6
NA     NA
2.7    3.5

我想:

3.6    4.2
9.2    8.4
1.1    8.2
2.7    3.5

是否有一些功能可以轻松完成?

谢谢!

2 个答案:

答案 0 :(得分:2)

试试这个

df <- read.table(text = "3.6    4.2
9.2    8.4
4.8    NA
1.1    8.2
NA     11.6
NA     NA
2.7    3.5")
df[complete.cases(df), ]
#    V1  V2
# 1 3.6 4.2
# 2 9.2 8.4
# 4 1.1 8.2
# 7 2.7 3.5

答案 1 :(得分:0)

df[ apply(!is.na(df), 1, all) , ]

df <- data.frame(V1 = c(3.6,9.2,4.8,1.1,NA,NA,2.7),
                 V2 = c(4.2,8.4,NA,8.2,11.6,NA,3.5))

编辑:我忘记了na.omitcomplete.cases Doh。