将每日数据转换为季度,这将给出该季度的最后日期的数据点?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (96)

以下是数据的格式

01-Jan-1996 2.921090269

02-Jan-1996 2.950562989

03-Jan-1996 2.943103392

04-Jan-1996 2.935351262

05-Jan-1996 2.944054125

08-Jan-1996 2.973526845

09-Jan-1996 3.017918758

10-Jan-1996 3.010166628

我希望将上述内容转换为r / excel中的季度,其中的条目仅适用于该季度的最后一个日期,而不是总和/平均值等。

提问于
用户回答回答于

建立:

library(dplyr)
dd<-read.table(text="Date        Number
01-Jan-1996 2.921090269
02-Jan-1996 2.950562989
03-Jan-1996 2.943103392
04-Jan-1996 2.935351262
05-Jan-1996 2.944054125
08-Jan-1996 2.973526845
09-Jan-1996 3.017918758
10-Jan-1996 3.010166628", header=T)

将日期列设为实际Date

dd$Date<-as.Date(dd$Date,format="%d-%b-%Y")

仅保留每个季度的最后日期:

dd<- dd %>% mutate(Q=cut.Date(Date, "quarter", labels=F)) %>% 
     group_by(Q) %>% filter(Date==max(Date))

所属标签

可能回答问题的人

  • 西风

    renzha.net · 站长 (已认证)

    7 粉丝1 提问9 回答
  • 四无君

    0 粉丝0 提问3 回答
  • HKC

    红客学院 · 创始人 (已认证)

    26 粉丝7 提问2 回答
  • o o

    3 粉丝490 提问2 回答

扫码关注云+社区

领取腾讯云代金券