0
我正在嘗試使用sapply
(或類似)函數來對所有符合數據集中多個條件的值進行求和。如何求和符合多個條件的數據框中的所有值?
我能夠編寫特定匹配的代碼,但不知道如何使用R應用於數據框中的每個唯一匹配。
例如,如果我的數據幀被構造爲具有3列
col1 <- c("a", "a", "a", "b", "b", "b", "b", "b", "b")
col2 <- c(1, 1, 1, 2, 2, 2, 1, 1, 1)
col3 <- c(10, 5, 10, 5, 5, 1, 3, 4, 5)
df <- data.frame(col1, col2, col3)
這裏是我使用一個匹配的代碼:
tmp <- subset(df, col1 == "a" & col2==1)
sum(tmp[,3])
此代碼爲正確的總和25返回col3
符合subset
函數中的2條標準。
如何對數據框中的3個獨特組合進行此計算?我正在尋找以下輸出
col1 col2 sum_col3
a 1 25
b 1 12
b 2 11
感謝您提前幫助。
在基礎R標準的做法是'aggregate'?另請看看這裏:http://stackoverflow.com/questions/1660124/how-to-sum-a-variable-by-group –