我有一个具有一些NA值的数据帧。我想拉出具有NA的行,但是我不想删除它们,我想创建一个新的数据帧,其中只包含特定列中具有NA的那些行。 / p>
我已经搜索了如何做到这一点的答案,但我发现的一切只是告诉我如何删除NA行。有人评论他们所说的而不是删除他们不想要的行,搜索如何使用你想要的行创建一个新的框架......但我还是没能找到怎么做。
我的数据框Biov_per_genus2如下所示:
ID Code Mag_x Sample Source Count Avg_Biov_cell total_biov_code
1 Env_102 A 200 102 Env 44 7.962052e+03
2 Env_102 A 400 102 Env 1 NA
3 Env_102 AA 200 102 Env 2 2.567925e+01
4 Env_102 AA 400 102 Env 8 9.664901e+00
5 Env_102 B 200 102 Env 46 1.883699e+04
6 Env_102 CG 400 102 Env 1 NA
7 Env_102 CY 400 102 Env 12 2.188643e+01
8 Env_102 D 400 102 Env 21 1.413717e+01
9 Env_102 F 400 102 Env 6 8.136725e+02
10 Env_102 Group1 200 102 Env 2 2.073616e+02
11 Env_102 Group1 400 102 Env 87 9.557676e+00
12 Env_102 JJ 200 102 Env 24 5.169177e+03
13 Env_102 JJ 400 102 Env 18 5.230752e+02
14 Env_102 KK 400 102 Env 1 NA
15 Env_102 MC 400 102 Env 32 1.342800e+03
16 Env_102 N 400 102 Env 7 1.453212e+02
17 Env_102 O 200 102 Env 43 2.035783e+04
18 Env_102 O 400 102 Env 10 1.255538e+03
19 Env_102 PrevH 200 102 Env 3 3.474356e+05
20 Env_102 S-SS 200 102 Env 3 2.458556e+03
21 Env_102 S-SS 400 102 Env 3 1.846000e+02
22 Env_102 TF 200 102 Env 8 NA
23 Env_102 U 200 102 Env 2 6.819019e+02
24 Env_102 WG 200 102 Env 1 9.894446e+03
25 Env_102 Z 200 102 Env 28 3.133701e+02
26 Env_114 A 200 114 Env 34 8.463451e+03
27 Env_114 AA 400 114 Env 23 1.027414e+01
28 Env_114 B 200 114 Env 6 2.099966e+04
29 Env_114 CC 200 114 Env 4 NA
30 Env_114 CG 400 114 Env 1 1.000500e+03
31 Env_114 CY 400 114 Env 24 3.989823e+01
32 Env_114 D 400 114 Env 15 3.602360e+01
33 Env_114 E 200 114 Env 4 7.127227e+03
34 Env_114 F 400 114 Env 19 3.215944e+02
35 Env_114 G 200 114 Env 4 3.106407e+03
36 Env_114 Group1 200 114 Env 17 1.664819e+02
37 Env_114 Group1 400 114 Env 91 1.020834e+01
38 Env_114 J 400 114 Env 1 1.123198e+03
39 Env_114 JJ 200 114 Env 6 1.630015e+03
40 Env_114 JJ 400 114 Env 3 4.003960e+02
41 Env_114 KK 200 114 Env 6 NA
42 Env_114 KK 400 114 Env 3 NA
43 Env_114 LL/N/O 400 114 Env 8 4.682544e+02
44 Env_114 MC 400 114 Env 18 5.718000e+03
45 Env_114 N 200 114 Env 1 8.586049e+03
46 Env_114 O 200 114 Env 34 1.092983e+04
47 Env_114 S-SS 200 114 Env 3 7.149000e+03
48 Env_114 TF 200 114 Env 22 1.880243e+02
49 Env_114 TF 400 114 Env 1 NA
50 Env_114 U 200 114 Env 2 9.306367e+02
51 Env_114 WG 200 114 Env 4 NA
52 Env_114 Z 200 114 Env 58 2.270314e+02
53 Env_125 A 200 125 Env 153 9.614530e+03
54 Env_125 A 400 125 Env 6 2.200686e+02
它继续> 700行。我想拉出Avg_Biov_cell列中包含NA的行,并将所有数据放入新的数据帧中。
任何建议都将受到赞赏。
答案 0 :(得分:1)
终于搞定了!!!
NAsamples <-subset(Biov_per_genus2,is.na(Avg_Biov_cell))
感谢所有试图提供帮助的人!
答案 1 :(得分:0)
你正在寻找我认为的这种东西。
set.seed(100)
a <- matrix(rnorm(100),10)
a[sample(1:100,5)] <- NA
a <- data.frame(a)
a[!complete.cases(a),]