R语言dplyr包:根据Period, Nrate, Hybrid分组计算bio和biomass的累积和
使用dplyr包的group_by和mutate函数,可以方便地根据多个变量对数据框进行分组,并计算分组内特定列的累积和。
假设数据框sl包含Period, Nrate, Organ, Hybrid, bio和biomass等列,我们想要根据Period, Nrate, Hybrid分组,对每组的Organ列新增加一种类型'Total',其bio和biomass的值分别为原始Organ所有类的bio和biomass的累积和。
可以使用以下代码实现:
library(dplyr)
sl <- sl %>%
group_by(Period, Nrate, Hybrid) %>%
mutate(Total = 'Total',
bio = sum(bio),
biomass = sum(biomass)) %>%
ungroup()
首先使用group_by函数将数据框按照Period、Nrate和Hybrid三个变量分组,然后使用mutate函数新增加一个Total列,并且使用sum函数对原始Organ列的bio和biomass进行累积求和,最后使用ungroup函数取消分组。执行上述代码后,sl数据框就会新增加一列Total,同时对应的bio和biomass列的值也会发生变化,变成了原始Organ所有类的bio和biomass的累积和。
该方法可以有效地对分组数据进行汇总,并根据需要生成新的汇总列。
原文地址: https://www.cveoy.top/t/topic/mpDJ 著作权归作者所有。请勿转载和采集!