我有以下两个数据帧。 df1
由单个用户的平均参数大小组成。 df2
包含用户的相同参数的平均每日值。根据条件比较两个数据帧
我想要计算的事件天数df2$size > df1$size
对于每个user
。
df1 = read.table(text='user size
AAL0706 29000
AAN0823 25000
AAV0450 30000', stringsAsFactors=FALSE, header=TRUE)
df2 = read.table(text='Date user size
2010-01-04 AAL0706 31054
2010-01-06 AAL0706 20703
2010-01-08 AAL0706 39968
2010-01-04 AAN0823 17892
2010-01-06 AAN0823 37839
2010-01-08 AAN0823 19649
2010-01-04 AAV0450 35432
2010-01-06 AAV0450 37839', stringsAsFactors=FALSE, header=TRUE)
预期成果是:
user count
AAL0706 2
AAN0823 1
AAV0450 2
我曾尝试使用下面的命令来计算我的结果,但我知道什么是错的。
lapply(df1, function(y) {
ddply(df2$size, .(user), function(x) {
return(length(y$size(y$size > x$size))
})
})
您能否请教我一个这样做的有效方法?
“dplyr”库的使用有助于我替换大部分使用“聚合”函数进行的工作。处理大型数据集时,我正在用“聚合”函数解决内存问题。我相信“dplyr”包是我的问题的一个很好的选择 – Anna