這與我看過的How to summarize by group?這個問題有關,但是,似乎我的數據有點不同,這讓事情變得很奇怪。 我有data.frame DF像這樣:R:通過多列數求和
X Y1 Y2 Y3 Y4
3 A A B A
2 B B A A
1 B A A A
我想在X的數值,使得輸出是做一個排序在Y各自獨特的因子加權和:
Y Y1 Y2 Y3 Y4
A 3 4 3 6
B 3 2 3 0
我曾嘗試使用for循環遍歷列的索引,但我無法正確傳遞Y的數目,並且它看起來不像R有效執行此操作的方式,因爲更多的列和行。
看起來像根據鏈接的問題,但這是正確的方法,但是,當我試圖通過group_by和summarise_each在所有列上執行相同的操作時,由於Y是因素,所以出現錯誤。我應該用「應用」來代替嗎?這似乎是直接的邏輯,但我一直在其實施難住。
aggregate(X~Y1,DF,sum)
我沒有看到@thelatemail了'xtabs'的解決方案,是很好的 –
試着做'df'一個'data.table'對象首先通過'setDT(DF)' - 我剛剛測試了代碼再次,它工作正常。 – thelatemail