按月计算的观察次数/频率

时间:2013-11-01 23:48:18

标签: r date

我有一个包含34个变量和大约25,000个观测值的数据集。每次观察都是指一个特定事件。它的格式如下:

  no    id    date         ....
1 363   006   2005-11-05
2 939   012   2007-01-23
3 541   090   2009-06-14

我想知道是否有人可以告诉我如何获取此数据集中包含的5年内每个月的事件总数。

2 个答案:

答案 0 :(得分:5)

您似乎只想计算每个月的行数,如果是这样,您可以使用table()

> #make junk data
> data <- data.frame(no=rnorm(100),id=rnorm(100),date=seq(Sys.Date()-99,Sys.Date(),by="day"))
> table(format(data$date,"%b-%Y"))
Aug-2013 Jul-2013 Nov-2013 Oct-2013 Sep-2013 
      31        7        1       31       30 

答案 1 :(得分:0)

tapply( dfrm$no, sub(".+-(.+)-.+", "\\1", dfrm$date), sum, na.rm=TRUE)

对于MM-YYYY格式的月份和年份,请使用此作为类别代码:

.... , sub("(.+)-(.+)-.+", "\\2-\\1", data$date) , ....