按月汇总行时生成错误

时间:2015-09-23 09:33:39

标签: r

以下是有关日期的成功与失败的数据,我想按月汇总。我尝试了以下命令,但它出现以下错误

rowsum(xx$success, format(xx$$date, "%b-%Y"))
  

format.default中的错误(结构(as.character(x),names = names(x),dim = dim(x),:

   无效的'trim'参数

不确定我错在哪里。

    date    success
 5-Sep-02       0
19-Sep-02       0
25-Sep-02       1
10-Oct-02       0
12-Oct-02       0
14-Oct-02       1
15-Oct-02       0
28-Oct-02       0
30-Oct-02       0
 9-Nov-02       1
14-Nov-02       0
19-Nov-02       1
 2-Dec-02       0
12-Dec-02       0
16-Dec-02       0

1 个答案:

答案 0 :(得分:2)

以下是# first convert date to class "date": xx$date <- as.Date(as.character(xx$date), "%d-%b-%y") # careful: if your locale is not set properly %b might return NAs xx %>% group_by(date = as.yearmon(date)) %>% # we group by month, using as.yearmon from the package "zoo" summarise(success = sum(success)) # and then we summarise 的解决方案:

Source: local data frame [4 x 2]

      date success
1 Sep 2002       1
2 Oct 2002       1
3 Nov 2002       2
4 Dec 2002       0

这应该导致:

R

你的问题是rowSum不按月汇总,而是将每个(即每次观察)相加。您基本上告诉df %>% group_by(date = as.yearmon(date)) %>% summarise(successes = sum(success == 1), failures = sum(success == 0)) 将月份和成功值相加(显然)会产生错误。

编辑:

从重读这个问题来看,OP是否想要在一个月内计算成功失败并不完全清楚。这只需要对我上面发布的代码进行一些调整:

timespec