逐行累计和

编程入门 行业动态 更新时间:2024-10-27 06:34:37
本文介绍了逐行累计和的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我有一个data.table dt如下.

df <- data.frame(t1 = rep(0,5), t3 = c(12, 5, 8,9, 5), t7= c(25, 48, 7, 9, 14)) dt <- setDT(df) dt t1 t3 t7 1: 0 12 25 2: 0 5 48 3: 0 8 7 4: 0 9 9 5: 0 5 14

我想获得各列的累积总和.我只是在行中得到它.如何在 data.table 中执行此操作.

I want to get the cumulative sums across the columns. I am only getting it across the rows. How to do this in data.table.

dt[, 1:3 := cumsum(dt)] dt t1 t3 t7 1: 0 12 25 2: 0 17 73 3: 0 25 80 4: 0 34 89 5: 0 39 103

想要的输出如下:

dt t1 t3 t7 1: 0 12 37 2: 0 5 53 3: 0 8 15 4: 0 9 18 5: 0 5 19

推荐答案

另一个选项使用 Reduce 和 accumulate=TRUE:

Another option use Reduce with accumulate=TRUE:

dt[, names(dt) := Reduce(`+`, dt, accumulate = TRUE)] dt # t1 t3 t7 #1: 0 12 37 #2: 0 5 53 #3: 0 8 15 #4: 0 9 18 #5: 0 5 19

更多推荐

逐行累计和

本文发布于:2023-10-25 18:38:26,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1527763.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!