【发布时间】:2015-04-20 15:34:25
【问题描述】:
我正在将我在 Excel 中所做的分析迁移到 R 中,因为我的数据集已达到 Excel 的极限。
在 Excel 中,我有一个执行 sumifs 函数的工作表(“状态”),对另一个工作表(“成员”)中的值求和,这些工作表在“状态”中具有相同的状态/周组合。
我想在 R 中执行此操作,其中“状态”和“成员”是 data.frames。因此,对于“状态”data.frame 中的所有行,我想对“成员”data.frame 中在“状态”中具有相同状态/周组合的所有行求和。
数据集
state=data.frame(state=c('MD','MD','MD','NY','NY','NY'), week = 1:3)
member=data.frame(memID = 1:5, state = c('MD','MD','NY','NY','MD'),
week = 1:3,
value = c(24,43,34,54,33,35,33,11,42,23,14,12,42,4,23))
期望的输出
state = data.frame(state=c('MD','MD','MD','NY','NY','NY'), week = 1:3,
total = c(80,90,70,96,15,76))
谢谢!
编辑:
一开始我过于简化了我的示例 - sumifs 还考虑了多个不等式。所以在这个例子中,使用相同的数据,如果值在 20 到 40 之间,我将如何计算总和?
新的期望输出将是
state = data.frame(state=c('MD','MD','MD','NY','NY','NY'), week = 1:3,
total = c(80,33,58,0,0,34) )
state
【问题讨论】: