行的限定數目和每個的位置(從-1000到+1000)並且對於每個位置的計數。一個小例子看起來這本:操作在我正在與具有數據組的數據表的一種工作data.table
dt.ex <- data.table(newID=rep(c("A","B"), each = 6), pos=rep(c(-2:3), 2), count= sample(c(1:100), 12))
newID pos count
1: A -2 29
2: A -1 32
3: A 0 33
4: A 1 45
5: A 2 51
6: A 3 26
7: B -2 22
8: B -1 79
9: B 0 2
10: B 1 48
11: B 2 87
12: B 3 38
我想要做的就是每n行之間計算平均值(或總和)爲每個組NEWID的。也就是說,分成n行並彙總結果。這將是輸出假設N = 3,總結:
newID pos count
A -2 94
A 1 122
B -2 103
B 1 173
老實說,我對如何啓動,而不訴諸某種循環的不知道 - 不建議爲67094000×3臺。如果我只想計算每個newID,像this這樣的技巧就可以做到,但我還沒有看到一個解決方案接近回答我的問題。 Plyr解決方案也很受歡迎,儘管我覺得這可能太慢了。
在您的輸出,你沒有的平均值'pos',而是最低/第一個值...? – Frank
你的數據中有多少個獨特的'newID'? – Arun