[英]Count and Aggregate Date in R
以下是我拥有的数据:
Item Date
Apple 09/06/2015
Orange 19/06/2015
Pear 01/09/2015
Kiwi 20/10/2015
我想按R中“日期”列中的月份和年份对项目进行计数。
以下是我想要实现的输出:
Date Frequency
05/2015 0
06/2015 2
07/2015 0
08/2015 0
09/2015 1
10/2015 1
谢谢。
只需确保日期格式正确即可,然后就可以使用cut
and table
,如果要修剪日期,可以使用一些格式,
## Convert to date
dat$Date <- as.Date(dat$Date, format="%d/%m/%Y")
## Tabulate
tab <- table(cut(dat$Date, 'month'))
## Format
data.frame(Date=format(as.Date(names(tab)), '%m/%Y'),
Frequency=as.vector(tab))
# Date Frequency
# 1 06/2015 2
# 2 07/2015 0
# 3 08/2015 0
# 4 09/2015 1
# 5 10/2015 1
假设您是每月总计,我将使用lubridate
和dplyr
:
library(lubridate)
library(dplyr)
data$Date <- dmy(data$Date)
data$date_formatted <- format(data$Date, "%m/%Y")
data %>% group_by(date_formatted) %>% summarise(frequency = n())
这给出以下输出:
date_formatted frequency
1 06/2015 2
2 09/2015 1
3 10/2015 1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.