2015-03-30 120 views
1

我试图用我的数据框中包含数据框中所有数值的数据创建一个矢量。从R中的数据帧中提取数据

基本上,我想要一个有(2,2,5,2,2,3,2,3,2,2,2,2,2)的载体。

two three four five six seven 
2 NA NA NA NA NA 
2 NA NA NA NA NA 
NA NA NA 5 NA NA 
2 NA NA NA NA NA 
2 NA NA NA NA NA 
NA 3 NA NA NA NA 
2 NA NA NA NA NA 
NA 3 NA NA NA NA 
2 NA NA NA NA NA 
2 NA NA NA NA NA 
2 NA NA NA NA NA 
2 NA NA NA NA NA 
2 NA NA NA NA NA 
+0

如果要复制你的*确切*输出,你可以尝试'INDX < - 这(is.na(!数据),arr.ind = TRUE); data [indx [order(indx [,1]),]]' – 2015-03-30 20:08:15

回答

1

刚子集非NA数据帧与!is.na(df)值:

df <- data.frame(two = c(2, 2, NA), 
       three = c(NA, NA, NA), 
       four = c(NA, 3, NA)) 
df 
# two three four 
# 1 2 NA NA 
# 2 2 NA 3 
# 3 NA NA NA 

is.na(df) 
#  two three four 
# [1,] FALSE TRUE TRUE 
# [2,] FALSE TRUE FALSE 
# [3,] TRUE TRUE TRUE 

df[!is.na(df)] 
# [1] 2 2 3