基于日期的总和/汇总数据,R

时间:2014-05-29 12:20:27

标签: r date

我有一个如下数据集:

Date            Country    Item    Qty    Value
15-04-2014      SE         08888   2      20
28-04-2014      SE         08888   2      20
05-05-2014      SE         08888   6      80

我希望在日期早于5月1日之前对数量值求和,并且汇总值(总和)应标记为5月1日。

我尝试ddply,但无论日期如何,它都会计算所有值。

ddply(se, .(se$Item), summarize, Qty = sum(se$Qty), Value = sum(se$Value))

还尝试按日期进行子集化,但没有取得多大成功。

se$Date <- as.Date(as.character(se$Date))
se_q <- subset(se,se$Date <= 01-05-2014)

Date         Country Item     Qty    Value
0015-04-20   SE      08888    2      20
0028-04-20   SE      08888    2      20
0005-05-20   SE      08888    6      80

如何在代码中添加日期参数?或者我怎么能这样做?

谢谢

1 个答案:

答案 0 :(得分:0)

您可以使用dplyr例如:

require(dplyr)

> df %.% 
    filter(Date <= as.Date("2014-05-01")) %.% 
 #  group_by(Item) %.%                       #you can add this line if you need to group by Item (it will appear in the output then)
    summarize(Date = as.Date("2014-05-01"), Qty = sum(Qty), Value = sum(Value))

#        Date Qty Value
#1 2014-05-01   4    40

subset中的问题是,您没有告诉R 2014-05-01Date