如何将“行数”相加到相同的特定值

时间:2014-03-07 13:05:06

标签: r sum

嘿我正在处理包含位置和日期的数据集。我想从原来的数据框架创建一个新的数据框架。新数据框将包括日期(仅限月份),数字对应于同月的总和。例如,如果我的数据集如下所示:

USA 2011-01-01
USA 2012-01-01
UK  2010-05-01
UK  2009-05-01
USA 2012-07-01

我的新数据框如下;

January  2
May      2
July     1

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

更新:

stack(table(format(as.Date(df$V2), "%B")))

可生产

  values     ind
1      2 January
2      1    July
3      2     May

另一种选择(Ananda Mahto提供):

stack(table(df$V2))    # here V2 has the dates

可生产

  values        ind
1      2 2010-05-01
2      2 2011-01-01
3      1 2012-07-01

table计算V2值(日期); stack从结果中创建一个数据框,添加一个名为(ind)的列。

答案 1 :(得分:0)

aggregate()功能与length()

一起使用
old.data <- data.frame(date = rep(c('a', 'b'), 10))
aggregate(old.data$date, by = list(old.data$date), FUN = length)