【问题标题】:How to convert a data frame of Dates and Frequency to a quarterly basis? R如何将日期和频率的数据框转换为季度? R
【发布时间】:2020-03-19 18:51:12
【问题描述】:

我有一个 2016-2019 年的数据 这是我的数据示例

print(myData)
      Date      Freq
    2016-08-08  14
    2016-08-09  20  
    2016-08-10  34  
    2016-08-11  32
    2016-08-12  19
    2016-08-15  35
    2016-08-16  32

我想创建一个线图,但我希望看到这样的东西,这样我就可以看到每季度的趋势。

  Date   Freq
2016 Q1   300
2016 Q2   313
2016 Q3   313
2016 Q4   432
2017 Q1   313
2017 Q2   131

如何在 R 中做到这一点?

【问题讨论】:

  • 是否显示了基于输入的预期季度

标签: r dplyr lubridate


【解决方案1】:

我们可以从zoo使用as.yearqtr

library(zoo)
myData %>%
    mutate(Date = as.yearqtr(Date))

如果该列还不是Date 类,请先转换为Date

myData <- myData %>%
              mutate(Date = as.yearqtr(as.Date(Date)))

【讨论】:

    【解决方案2】:

    lubridate有一个函数quarter

    quarter(myData$Date)
    

    所以对于您的数据,您可以简单地编写:

    myData <- myData %>% mutate(quarter = quarter(Date)
    

    【讨论】:

      猜你喜欢
      • 2021-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-28
      • 2022-11-09
      • 2016-02-10
      • 2021-03-08
      • 1970-01-01
      相关资源
      最近更新 更多