2013-06-21 58 views
0

我有什麼應該是一個簡單的問題,但我對R很新,所以它困擾着我。R:使用rollapply來求和列組的問題

我有一系列25列代表行爲實驗中的試驗。我想用roll應用來總結前5列,然後6-10,11-15等等,這樣我就得到一個新的包含輸出的5列數據框(類似於5列樣本下面)。真的,重點是能夠快速改變「容量大小」,以便我可以決定最適合數據的「分辨率」。最後,我不會只是總結,但我認爲這個答案會讓我滾動很多。

INPUT: 
Col1 Col2 Col3 Col4 Col5 
    1  1  1  1  1 
    2  2  2  2  2 

DESIRED OUTPUT: 
Col1 
5 
10 

回答

0

假設輸入是一個數據框,也許是這樣的:

sapply(0:((length(LENGTH)-1)/5), function(x) sum(INPUT[, 5*x+1:5])) 

我不認爲zoo::rollapply被設想爲跨列滾動。

+0

感謝您的建議。我在理解參數的結構方面遇到了一些麻煩。所有的應用函數使我感到困惑......我創建了一個簡單的3行數據框,其中包含25個數字填充列,但是我一直收到一個錯誤'sapply(0:(length(INPUT)/ 5),function(x)sum INPUT [,5 * x + 1:5])) [.data.frame(INPUT,5 * x + 1:5)中的錯誤: 未定義的列選擇' – user2510207

+0

我之所以說「可能」在沒有樣本數據集的情況下未經測試。情況依然如此。如果你有更好的答案,你應該編輯你的問題添加創建樣本數據集的代碼。 –

+0

編輯過的版本可能效果更好。 –