导致此sqldf错误的原因 - 需要按Customer_ID分组吗?

时间:2017-08-17 19:20:00

标签: r sqldf

我目前在R中有一个名为DDS_LS的数据框。目前每一行都是按交易进行的,但我需要Customer_ID聚合的交易。

sqldf("SELECT Customer_ID, count(distinct Lifestyle), count(distinct Price_Point),
         cumsum(Delivered_Sales), cumsum(QTY_sold)
        FROM DDS_LS GROUP BY Customer_ID")

然后我收到以下错误:

Error in rsqlite_send_query(conn@ptr, statement) : 
  external pointer is not valid

造成这种情况的原因是什么?

1 个答案:

答案 0 :(得分:0)

您正在尝试使用cumsum中不存在的sqldf。您可以在此处查看支持的聚合函数列表:https://sqlite.org/lang_aggfunc.html

如果您想获得累积总和,我建议您将代码移至dplyr

library(tidyverse)
DDS_LS %>%
  group_by(Customer_ID) %>%
  summarise(count(distinct(Lifestyle)),
            count(distinct(Price_Point)),
            cumsum(Delivered_Sales),
            cumsum(QTY_sold))