按 ID 累积总和,有滞后

2024-01-30

我想通过 id 创建一个累积和。但是,它不应该对属于正在计算的行的值求和。

我已经尝试过使用 cumsum 了。但是,我不知道如何添加一条语句,指定不添加求和行的金额。我正在寻找的结果列是第三列,名为:“sum”。

例如,对于 id 1,第一行 sum=0,因为不应该添加这一行。但是,对于 id 1 和第 2 行,sum=100,因为第 2 行之前的 id 1 的数量为 100,依此类推。

   id amount sum
1:  1    100   0
2:  1     20 100
3:  1    150 120
4:  2     60   0
5:  2    100  60
6:  1     30 270
7:  2     40 160 

这是我尝试过的:

  df[,sum:=cumsum(amount),
      by ="id"] 

  data: df <- data.table(id = c(1, 1, 1, 2, 2,1,2), amount = c(100, 20, 
  150,60,100,30,40),sum=c(0,100,120,0,60,270,160) ,stringsAsFactors = 
  FALSE)

您可以在不使用的情况下执行此操作lag:

> df %>%
      group_by(id) %>%
      mutate(sum = cumsum(amount) - amount)
# A tibble: 7 x 3
# Groups:   id [2]
     id amount   sum
  <dbl>  <dbl> <dbl>
#1    1    100     0
#2    1     20   100
#3    1    150   120
#4    2     60     0
#5    2    100    60
#6    1     30   270
#7    2     40   160
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

按 ID 累积总和,有滞后 的相关文章

  • 为什么 sapply 的缩放速度比样本大小的 for 循环慢?

    假设我想采用向量 X 2 1 N 并将 e 计算为每个元 素的指数 是的 我认识到最好的方法就是通过向量化 exp X 但这样做的目的是将 for 循环与 sapply 进行比较 我通过逐步尝试三种方法 一种使用 for 循环 两种以不同方
  • 我可以使用哪个 R 函数来查找两条线的交点?

    我刚刚研究了 stackoverflow 上所有的 在 R 中寻找交集 问题 它们要么是关于曲线 要么是关于分布像这个 https stackoverflow com questions 20519431 finding point of
  • 如何在 R 中的 for 循环内将值存储在向量中

    我正在开始使用 R 但我对以下问题感到非常沮丧 我试图将 for 循环内完成的某些计算的值存储到我之前定义的向量中 问题是如何进行索引 因为for循环迭代代码的次数取决于用户的输入 所以变量i不一定要从1开始 它可以从80开始 for举个例
  • 行对名称中具有特定模式的列求和

    我有一个像这样的数据表 DT lt ata table data table ref rep 3L 4L nb 12 15 i1 c 3 1e 05 0 044495 0 82244 0 322291 i2 c 0 000183 0 155
  • R Shiny:如何将无功值从闪亮模块返回到主服务器功能?

    我有一个简单的玩具示例 它使用 add removeBtn 模块在 第一个 模块中添加和删除 UI 我需要跟踪单击 添加 删除 的次数 如果我不使用模块 这很容易 但我试图在嵌套模块的上下文中执行此操作 代码如下 但基本上 我似乎无法访问主
  • 在 R 的 for 循环中创建动态命名对象并分配动态值

    我正在尝试创建一套动态命名的新对象 例如 temp2015 使用 for 循环 并存储动态值 具体来说 其他对象的名称 例如 Y2015 和 for 循环中使用的值 例如 2015 在动态命名的新对象中 我不确定为什么下面的代码不起作用 Y
  • 闪亮的应用程序包:css 和所有 www/ 目录内容

    我正在尝试将 Shiny 应用程序转换为 R 包 但我在处理有关 www 目录以及 松散 文件的所有问题时遇到了问题 我闪亮的应用程序运行得很好 但是当我尝试 打包它 时 它不起作用 我闪亮的应用程序目录 my shiny app R ut
  • R Shinydashboard 自定义 CSS 到 valueBox

    我一直在尝试将 valueBox 的颜色更改为自定义颜色 超出 validColors 中可用的颜色 但一直无法这样做 我知道有一种方法可以使用标签来包含自定义 CSS 但是我无法将它们放在正确的位置 ui lt dashboardPage
  • 在 R 中提取 data.frames 列表的名称以及 data.frame 中的值

    在下面的代码中 j是 data frames 的命名列表 我想知道是否有办法 a 提取变量的数值 即one short and one long 在 data frames 内并附加它们的相关名称 即 AAA or BBB or CCC 到
  • data.table 抛出“找不到对象”错误[重复]

    这个问题在这里已经有答案了 我有一个数据表 library data table mydt lt data table index 1 10 当我在全局环境中尝试它时 我可以让它工作 但当我在调试器中或在包测试中使用它时却无法工作 问题是我
  • 使用点阵个性化 R 上显示的 X 轴值

    我收集了大量包含日期 客户端及其 NFS 使用情况的数据 我正在使用lattice R包进行绘图 正如对超级用户的建议 https superuser com questions 523195 plot custom log data on
  • 使用数据帧的 R 中的 EWMA 波动性

    我正在尝试从一系列股票每日收益中获取 EWMA 波动性 这些收益来自一个名为base retorno diario Data IBOV ABEV3 AEDU3 ALLL3 BBAS3 BBDC3 BBDC4 1 2000 01 04 0 0
  • 如何在Rstudio中快速给几个单词加上引号?

    如何将 MI ID FL 转换为 MI ID FL 而无需键入每个双引号 Hmisc 包有一个函数 Cs 它将评估逗号分隔的文本是否带有引号 Cs MI ID FL becomes MI ID FL
  • R 改变构面的顺序

    我正在尝试将方面的顺序从 BA SLG 更改为 SLG BA 我发现了与此类似的问题 但我认为我的解决方案可能不起作用 因为我已经在Excel中汇总了数据 因此 我的数据框可能会有所不同 无论如何 我尝试实现这个但无济于事 df2 lt f
  • StatET调试工具

    我想我只是很密集 但我似乎无法弄清楚如何在 Eclipse 中的 R 中使用调试工具 StatET 插件 有人有关于这个主题的任何提示或教程吗 StatET 2 00 现在对高级 可视化调试提供实验性支持 需要 Eclipse 3 6 或
  • 在 Google Colab 上的 R 笔记本中安装 python 库

    我正在尝试在 Google Colab 上的 R 笔记本中安装 python 库 为此我使用 reticulate 包 library reticulate py install pandas 但我得到的结果是这个错误 Error coul
  • ggplot2:带有 geom_line 的 x 轴因子不起作用

    我想要一个线图 其中value绘制为函数expt每级一行var 这是我的数据 lines lt expt var value 1 none p 0 183065327746799 2 none p 0 254234138384241 3 n
  • 更改绘图区域背景颜色

    我想使用我们公司的颜色在 R 中制作一个图表 这意味着所有图表的背景应为浅蓝色 但绘图区域应为白色 我正在寻找答案 发现绘制一个矩形就可以完成这项工作 几乎 然而 绘图区域现在是白色的 并且图形不再可见 这可能吗 getSymbols SP
  • 斯皮尔曼相关性和联系

    我正在一小组配对排名上计算斯皮尔曼的 rho 斯皮尔曼因处理领带不当而闻名 例如 取2组8个排名 即使两组中有6个是平局 相关性仍然很高 gt cor test c 1 2 3 4 5 6 7 8 c 0 0 0 0 0 0 7 8 met
  • 闪亮井板宽度

    library shiny library shinydashboard ui lt dashboardPage dashboardHeader dashboardSidebar dashboardBody wellPanel tags d

随机推荐

  • Python 3.4:cStringIO 与 StringIO

    QUESTION 我返回一个 ImportError 没有名为 cStringIO 的模块 不幸的是 cStringIO 不再存在 我需要使用 StringIO 作为替代品 我怎样才能做到这一点 import edgar import ft
  • 在 Jinja 模板中使用 Ansible 控制主机的 IP 地址

    我想将 IP 地址插入到 Ansible playbook 使用的 J2 模板中 该IP地址是not正在配置的主机的地址 以及完成配置的主机的 IP 到目前为止我发现的所有内容都涵盖了使用与所配置的主机相关的变量 事实 换句话说 我要插入的
  • .NET 4.0 与 3.5 运行时性能

    现在 VS2010 已处于 RC 状态 距离 2 0 以来第一个新 核心 运行时版本的发布似乎只剩下几周的时间了 虽然我没有立即升级的需求 但我想知道是否有人在两者之间进行了一些性能测试 基准测试 如果有任何明显的性能提升 那么重新编译现有
  • “FirebaseAnalytics.Param.SIGN_UP_METHOD”无法在控制台中保存“值”以及“事件名称”

    我正在使用此代码来分析用户正在使用的sign up方法 Bundle bundle new Bundle bundle putString FirebaseAnalytics Param SIGN UP METHOD sign up met
  • Visio 形状 - 获取 X、Y 位置

    我已成功使用以下代码以编程方式将形状插入到 Visio 中 ActiveWindow Page Drop VisioApp Documents ORGCH M VSS Masters ItemU Executive 5 433071 7 5
  • App Engine Java 8 标准环境中的 Servlet 异步处理支持

    我正在尝试使用 GAE J8 标准环境 无可扩展环境 的 servlet 3 1 中的异步处理支持 基本上我有一个 servlet 注释为 WebServlet name MyServletName urlPatterns dosometh
  • 如何在javafx代码中添加Anchorpane约束?

    我知道您可以在 fxml 中添加 Anchor Pane 包含 例如 AnchorPane bottomAnchor 0 0 但是您可以在 java 代码中设置 AnchorPane 约束吗 AnchorPane 上有一组静态方法 您可以使
  • C++/CLI MSIL 程序集中的指针数组

    我正在尝试包装一些遗留的 C 代码 以便与在 NET Core 上运行的 C 一起使用 我在用着这里给出的方法 https stackoverflow com a 9004833创建编译为纯 MSIL 的 C 包装器 它对于简单的函数运行良
  • 在什么情况下,finally {} 块不会执行?

    在Java中try catch finally 块 内的代码finally 通常被认为 保证 运行 无论 try catch 中发生什么 然而 我知道至少在两种情况下它会not执行 If System exit 0 叫做 或者 如果异常一直
  • WildFly 中未找到 Nashorn 类

    我需要从 WildFly 中运行的 Web 应用程序内的 nashorn 访问内部类 以下代码在我的机器上运行良好 public class NashornTest public static void main String args t
  • 休眠验证器。如何使用@Valid注解?

    目的是什么 Valid将其放在方法参数级别时的注释 public void Valid Person p 我创建了一个测试 并将无效对象传递给该方法 但没有任何反应 我希望得到一个例外 The Valid对象上的注释指示验证框架处理带注释的
  • CMUSphinx 实时语音识别太慢?

    CMU Sphinx 识别实时语音太慢 不知道你有什么办法增强它吗 这是我的配置 configuration setAcousticModelPath WSJ 8gau 13dCep 16k 40mel 130Hz 6800Hz confi
  • JavaScript RegExp 中的 (*SKIP)(*FAIL) 解决方法

    我有一个在 regex101 com 中运行良好的正则表达式模式 a SKIP FAIL bword b 我正在尝试将其设为正则表达式 以便可以在replace JavaScript 中的函数 JavaScript 代码行是 var reg
  • 在循环中使用 numpy load 时内存溢出

    循环加载 npz 文件会导致内存溢出 取决于文件 列表长度 以下似乎都没有帮助 删除文件中存储数据的变量 使用 mmap 调用 gc collect 垃圾收集 以下代码应该重现该现象 import numpy as np generate
  • 如何检查iOS版本是iOS 6? [复制]

    这个问题在这里已经有答案了 可能的重复 检查 iPhone iOS 版本 https stackoverflow com questions 3339722 check iphone ios version 我想在 iOS 中检查 iOS
  • 如何实现A*算法? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 在 C 中简单实现 AN A 星 算法应该采用哪种方法 本文 https web archive org web 2017050503
  • numpy.sum 性能取决于轴

    对 numpy 数组中的维度求和时 第一个轴和最后一个轴之间是否存在性能差异 具体来说 考虑以下代码 其中sum1 and sum2会执行得更快吗 import numpy as np a np ones 1000 200 b np one
  • 是否可以限制每秒运行的 goroutine 数量?

    我有一个 URL 列表 我需要使用 goroutine 来同时触发 HTTP 请求 是否有办法检查并限制每秒发送的 HTTP 请求数量 Go 中的一个非常简单的版本是对漏桶 https en wikipedia org wiki Leaky
  • 如何从子查询返回多个值

    SELECT state business a report FROM base WHERE state IN SELECT a state FROM heart a join SELECT CAST MAX percent adults
  • 按 ID 累积总和,有滞后

    我想通过 id 创建一个累积和 但是 它不应该对属于正在计算的行的值求和 我已经尝试过使用 cumsum 了 但是 我不知道如何添加一条语句 指定不添加求和行的金额 我正在寻找的结果列是第三列 名为 sum 例如 对于 id 1 第一行 s