【发布时间】:2016-12-16 05:51:19
【问题描述】:
我对 r 很陌生,所以如果这是基本的(我确信是),我很抱歉,但我无法在任何地方找到答案。
我有一个数据集显示单个产品的销售情况,其中包含大约 500,000 行和 30 列,包括地区、销售金额和日期。我正在使用基本的 data.table 功能来创建基于单个组的摘要,例如按日期销售和按地区销售(即 DT[,sum(Sales),by=Date]),如下所示:
Date Sales
12/1 50,000
12/2 70,000
12/3 40,000
和
Region Sales
North 67000
East 60000
South 15000
West 22000
我想做的是查看(例如)按地区和日期细分的销售额,例如:
12/1 12/2 12/3
North 10,000 15,000 12,000
East 5,000 25,000 30,000
South 2,000 3,000 10,000
West 6,000 7,000 9,000
我希望能够对文件中包含的所有日期执行此操作(因此我不需要在每次针对不同的数据集和日期运行此操作时手动更改它)。这可能与 data.table 或其他东西吗?
谢谢!
【问题讨论】:
-
@akrun 这正是我想要的,谢谢!还有一个问题 - 有没有办法在 value.var 字段中包含条件?假设我想按地区和日期计算新客户的销售数量 - 在我的第一个示例中,将是 DT[,sum(NewCustomer=="YES"),by=Date]),按日期查看。可以将该条件合并到 dcast 语句中吗?
-
你可以试试
dcast(DT[NewCustomer == "YES"], Region~Date, length)
标签: r data.table