【问题标题】:pull out specific rows from a dataframe to make a new dataframe [duplicate]从数据框中提取特定行以制作新的数据框[重复]
【发布时间】:2017-02-03 20:10:05
【问题描述】:

我有一个具有一些 NA 值的数据框。我想拉出具有 NA 的行,我不想删除它们,我想创建一个新数据框,其中仅包含特定列中具有 NA 的那些行。

我已经搜索了如何执行此操作的答案,但我找到的所有内容都只是告诉我如何删除 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 的行,并将所有这些数据放入一个新的数据框中。

任何建议将不胜感激。

【问题讨论】:

  • 请在问题中添加更多详细信息。例如,至少一个虚拟数据框可以帮助我们帮助您!
  • 已添加我认为您正在寻找的答案。
  • 数据框在附图中。我不知道如何将它作为文本插入并保留正确的列,所以我截了一个屏幕截图。
  • 欢迎来到 Stack Overflow! How to make a great R reproducible example?
  • 感谢 Zx8754 的欢迎。我犹豫要不要加入,因为有人告诉我,用户会因为你提出一些看似基本的问题而对你刮目相看,但我想每个人都必须从某个地方开始。 R 看起来很混乱,而且我在网上找到的解决方案通常同样令人困惑,或者与我正在尝试做的事情不完全相关。

标签: r


【解决方案1】:

终于明白了!!! NAsamples <-subset(Biov_per_genus2,is.na(Avg_Biov_cell))

感谢所有试图提供帮助的人!

【讨论】:

    【解决方案2】:

    我想你正在寻找这种东西。

    set.seed(100)
    a <- matrix(rnorm(100),10)
    a[sample(1:100,5)] <- NA
    a <- data.frame(a)
    
    a[!complete.cases(a),]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-11
      • 1970-01-01
      • 1970-01-01
      • 2012-04-22
      • 2012-01-04
      相关资源
      最近更新 更多