我有以下兩個數據幀。 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