如果这个Q已经被问到了,很抱歉(我看过了,但是其他的问题并没有帮助)。我正在尝试从现有的df中创建一个新的df,该df计算来自多个列的年总值,每一行都是一年。所以,我的df看起来是这样的:
| year | v1 | v2 | v3
| -------- | -------------- |-----|-----
| 2021 | 5 |4 |6
| 2021 | 10 |5 |3
| 2020 | 7 |8 |5
| 2020 | 3 |3 |4
| 2019 | 3 |1 |8我想要的是一个新的df看起来:
| year | v1 | v2 | v3
| -------- | -------------- |-----|-----
| 2021 | 15 |9 |9
| 2020 | 10 |11 |9
| 2019 | 3 |1 |8我尝试过这样的方法,但没有任何运气:
newdf<- df %>%
group_by(year) %>% # create the groups
summarise(v1 = sum(v1))请让我知道,如果我应该包括其他信息:)谢谢v.much提前对您的帮助!
发布于 2022-09-25 08:54:25
在这种任务中,我使用的是“身在何处”的构造。此代码选择所有数值列,并对所有列进行求和。
newdf<- df %>%
group_by(year) %>% # create the groups
summarise(across(where(is.numeric), sum, na.rm = T))发布于 2022-09-25 08:33:09
R基应该能做到这一点:
newdf <- cbind(year = df$year, total = rowSums(x = df[, -1]))https://stackoverflow.com/questions/73842932
复制相似问题