r - 通过数据帧中的行计算总和
问题描述
我有一个关于 R 中通过行的负累积总和的问题,我怎样才能获得所需的输出:
# TEST
data <- data.frame(
`Delivery Year` = c('1976','1977','1978','1979'),
`Freq` = c(120,100,80,60),
`Year.1976` = c(10,3,8,0),
`Year.1977` = c(5,0,5,0),
`Year.1978` = c(10,10,0,0),
`Year.1979` = c(13,0,0,14)
)
data
# DESIRED
data <- data.frame(
`Delivery Year` = c('1976','1977','1978','1979'),
`Freq` = c(120,100,80,60),
`Year.1` = c(110,97,72,60),
`Year.2` = c(105,97,67,60),
`Year.3` = c(95,87,67,60),
`Year.4` = c(82,87,67,46)
)
data
解决方案
一种使用dplyr
and的解决方案purrr
可能是:
data %>%
mutate(pmap_dfr(across(-1), ~ accumulate(c(...), `-`)))
Delivery.Year Freq Year.1 Year.2 Year.3 Year.4
1 1976 120 110 105 95 82
2 1977 100 97 97 87 87
3 1978 80 72 67 67 67
4 1979 60 60 60 60 46
与base R
:
Reduce(`-`, data[-1], accumulate = TRUE)
推荐阅读
- javascript - JQuery .find() 找不到特定元素
- powerbi - 如何在 powerBi 的高级编辑器中编写 Snowflake SELECT 语句查询
- c - fscanf 写入字符串数组错误
- java - 如何在自定义测试运行器中将 Bazel 标签解析为其 jar,以便能够提取打包的单元测试?
- word-cloud - 使用 pip install 的 Wordcloud 安装错误
- javascript - 使用调度程序 Firebase 云功能检索 IP 地址并存储在 Firestore 中
- android - 将Uri作为位图放置在imageView中的操作发生错误
- javascript - Firebase 获取具有特定输入字符串的所有文档
- python - 出现错误:“int”对象没有属性“isnumeric”
- apache-nifi - 如何使用 QueryRecord 处理数组?