0
我無法使用ddply和merge的組合來聚合某些變量。我使用的數據幀是真正的大,所以我把下面的例子:如何在不是所有變量的元素都存在於R上時使用ddply進行聚合
data_sample <- cbind.data.frame(c(123,123,123,321,321,134,145,000),
c('j', 'f','j','f','f','o','j','f'),
c(seq(110,180, by = 10)))
colnames(data_sample) <- c('Person','Expense_Type','Expense_Value')
我要計算,對每個人,J型支出的百分比值對人的總支出。
data_sample2 <- ddply(data_sample, c('Person'), transform, total = sum(Value))
data_sample2 <- ddply(data_sample2, c('Person','Type'), transform, empresa = sum(Value))
這是我做了什麼按類型列出的總費用,但問題是,並不是所有的人都有類型j的費用,所以其比例應爲0,我不知道如何離開每人只有一條線,其中包括j類費用總額的百分比。
我可能沒有說清楚。
謝謝!
它的工作!非常感謝你。 –
假設原始數據集中的其他列的數據僅根據Person來變化。在聚合後我怎麼能離開這些值? –
因此,對於每個人來說,它是相同的值(例如,對於所有行,人員A只有x,對於所有行,人員B只有y)...?合併到一個不同的表格可能會起作用。否則,您可以將變量添加到'dplyr'中的'group_by'。 – bouncyball