我有数据框在下面重新设置一个

Date       Expenditure Indicator
29-01-2011 5455        212
25-01-2012 5452        111
11-02-2011 365         5

我目前对汇总Expenditure值感兴趣,我正在尝试使用以下功能
dta.sum <- aggregate(x = dta, FUN = sum,
                         by = list(Group.date = dta$date))

但是R返回以下错误,Summary.Date(c(15614L,15614L,15614L,15614L,15614L,15614L,:未为“日期”对象定义总和。)。Date列以前被定义为使用日期的日期。 as.Date函数,类似函数但均值很好。
dta.sum <- aggregate(x = dta, FUN = mean
                             by = list(Group.date = dta$date))

我想将日期格式化为日期。

最佳答案

在您的聚合语句中指示要获取其聚合的变量,此问题应得到解决:

dta.sum <- aggregate(x = dta[c("Expenditure","Indicator")],
                     FUN = sum,
                     by = list(Group.date = dta$Date))

编辑以添加说明:当您将aggregate参数仅指定为dta时,聚集尝试将参数应用于每个列。没有为R中的日期值定义sum,因此会出现错误。您想通过使用上述代码排除分组列。

09-28 08:44