【问题标题】:Removing Data with NAs for the whole quarter but not the whole dataset使用 NA 删除整个季度的数据,而不是整个数据集
【发布时间】:2019-09-26 13:31:24
【问题描述】:

我有一个数据集,其中包含公司多个季度的数据。一些公司有 NA 数据点。在这种情况下,我需要删除整个季度的公司数据,而不是整个数据集,因为其他季度的数据可能是完整的。

Identifier     Quarter     Date          Value
a              2013.1      02-02-2013    1
a              2013.1      02-03-2013    2
a              2013.1      02-03-2013    NA
a              2014.1      02-02-2014    4
b              2014.1      02-03-2014    5

在上面的示例中,我需要删除公司 a 2013 年第一季度的数据,而不是 2014 年第一季度的数据。

感谢任何帮助!

【问题讨论】:

    标签: r filter na


    【解决方案1】:

    我们可以按'Identifier'、'Quarter'分组,如果'Value'中有any、'NA'元素、filter'Quarter'的行

    library(dplyr)
    df1 %>% 
         group_by(Identifier, Quarter) %>% 
         filter(!any(is.na(Value))
    

    【讨论】:

    • 这不是重复的吗? stackoverflow.com/questions/29293039/…
    • @NickDylla 我会说这不是骗子,因为它专门询问 data.table 并且没有迹象表明这里的提问者正在使用该包。
    • @IceCreamToucan 这就是为什么我没有欺骗它。我在 cmets 中留下了链接,以防有人使用 data.table 并在另一个之前看到这篇文章。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多