与下一行、分组、data.table 进行比较

2023-12-10

我有一个数据框,其中包含每个用户每周的页面浏览量。我想确定每个用户在特定事件发生后他们的观点是否增加、减少或保持不变。我的数据如下所示:

Userid week xeventinweek numviews
Alice   1    2            5
Alice   2    0            3
Alice   4    1            6
Bob     2    2            3
Bob     3    0            5

因此,在这种情况下,Alice 在第一周发生了 2 个事件后,她的观看次数下降了,并且她在第二周没有事件可供衡量。然而,鲍勃在参加两次活动后一周将他的观点从 3 增加到 5。

我想要一张桌子,每周至少有一次活动,其观点存在差异。所以它应该看起来像这样:

Userid  week xeventinweek numviews numnextweek difference
Alice    1      2           5          3               -2
Alice    4      1           6          NA              NA #the row for week 2 is missing because there were no events then for Alice
Bob      2      2           3          5                2

没有必要同时拥有 numnextweek 和 Difference 列 - 要么 要么 都可以。

我可以使用 data.table 和 for 循环来完成此操作,但运行时间太长,因此不可行。我想过使用滚动联接,但对于分组数据似乎不可能(即需要为每个用户 ID 单独完成)。我如何使用 data.table 的本机功能来做到这一点?


Using match:

dat[, numnextweek := numviews[match(week + 1, week)] , by=Userid]
dat[, difference := numviews - numnextweek , by=Userid]
dat[xeventinweek != 0]

#   Userid week xeventinweek numviews numnextweek difference
#1:  Alice    1            2        5           3          2
#2:  Alice    4            1        6          NA         NA
#3:    Bob    2            2        3           5         -2
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

与下一行、分组、data.table 进行比较 的相关文章

  • 多功能测试仪替代 system.time

    我已经看到 我认为是这样 使用了类似于 system time 的函数 它可以同时评估多个函数的时间并输出一个输出 我不记得它是什么 并且用我正在使用的术语进行互联网搜索并没有得到我想要的响应 有人知道我正在谈论的功能的名称 位置吗 你想要
  • 如何使用 R 计算成为列表中中位数的概率?

    假设我有以下数据集 其中显示了假设实验的每个状态的三个观察结果的列表 state lt c Iowa Minnesota Illinois outcome lt list c 5 11 11 c 3 12 8 c 9 14 2 dat lt
  • 如何使用 usmap 标记数字而不是名称?

    我知道 usmap 有一个选项label in plot usmap 我想标记一些数字 而不是状态名称 我想 usmap 中应该有与州质心坐标相关的数据 但我不知道如何找到它 如果我能得到 坐标然后我可以用它来标记数字geom text 这
  • R 中的快速 QR 分解

    我有大量矩阵 需要对其执行 QR 分解并存储生成的 Q 矩阵 进行归一化 以便 R 矩阵在其对角线上具有正数 除了使用之外还有其他方法吗qr 功能 这是工作示例 system time Parameters for the matrix t
  • 尝试读取 CSV 文件时出现“无法识别的字符串转义”

    我正在尝试导入一个 csv文件 以便我可以观看此视频 R ggplot2 图形直方图 http www youtube com watch v 47kWynt3b6M 我安装了所有正确的软件包 包括ggplot以及相关的包 视频中的第一个说
  • pyomo + 网状错误 6 句柄无效

    我正在尝试运行pyomo优化 我收到错误消息 Error 6 The handle is invalid 不知道如何解释它 环顾四周似乎与特权有关 但我不太明白 在下面找到完整的错误跟踪以及重现它的玩具示例 完整的错误跟踪 py run f
  • 当sql连接中存在两个同名列时,如何从一个表列中获取值

    当我连接两个具有相同名称列的表时 我目前面临着尝试获取值的问题 例如 table1 date和table2 date 每个表中的日期不同 我将如何获取 日期 本例中的表1 我目前正在跑步 while row mysqliquery gt f
  • 合并 2 个大型 CSS 文件的有效方法

    我正在寻找一个可以合并 2 个大型 CSS 文件的工具 到目前为止我尝试过的所有方法 例如CSSMerge 都没有成功 其中一些只是随机删除属性 其他人则因 webkit 和 moz 等非标准属性而窒息 并给我错误 我还需要保留每条规则大小
  • 将数据框中重叠的范围合并到唯一的组中

    我有一个 n 行 3 的数据框 df lt data frame start c 178 400 983 1932 33653 end c 5025 5025 5535 6918 38197 group c 1 1 2 2 3 df sta
  • 将阴影区域添加到五分位数之间的直方图中

    All 我有一个包含 2 个直方图的图表 其中我还绘制了代表第 20 40 60 和 80 个百分位数的线条 下面的代码使用虚拟数据重现了类似的图表 data lt rbind data frame x rnorm 1000 0 1 g o
  • 在 r 中的 group_by 之后建模后取消列表列的嵌套

    我想对所有组进行线性回归group by 将模型系数保存在列表列中 然后使用 unnest 扩展列表列 这里我用的是mtcars以数据集为例 注 我想用do here becausebroom tidy 不适用于所有型号 mtcars gt
  • C# 动态/expando 对象的深度/嵌套/递归合并

    我需要在 C 中 合并 2 个动态对象 我在 stackexchange 上找到的所有内容仅涵盖非递归合并 但我正在寻找能够进行递归或深度合并的东西 非常类似于jQuery 的 extend obj1 obj2 http api jquer
  • 文本挖掘 pdf 文件/词频问题

    我正在尝试挖掘一篇具有丰富 pdf 编码和图表的文章的 pdf 我注意到 当我挖掘一些 pdf 文档时 我得到的高频词是 phi taeoe toe sigma gamma 等 它与某些 pdf 文档配合良好 但与其他文档配合使用时却得到这
  • 使用 ggmap 截断密度多边形

    我在使用 R ggmap 绘制密度图时遇到问题 我的数据如下所示 gt head W date lat lon dist 1 2010 01 01 31 942 86 659 292 415 2 2010 01 10 32 970 84 1
  • SPSS 中的标准化残差与 R rstandard(lm()) 不匹配

    在寻找 R 相关解决方案时 我发现 R 和 SPSS 版本 24 在计算简单线性模型中的标准化残差方面存在一些不一致 看来SPSS所谓的标准化残差匹配 R学生化残差 我完全不认为某处存在软件错误 但显然这两个程序之间存在差异 看看这个例子
  • 条件字体颜色 R Markdown

    我无法找到一种方法来根据变量的值 gt 0 0 或 r setup include FALSE x lt 4 This is an R Markdown document r if x gt 0 textcolor red Markdown
  • R:使用 tidyverse 将 NA 替换为 df 中的其他变量

    我想使用 tidyverse 替换 df 中的 NA 值 我想要的值应该从其他列中计算出来 input ID X1 X2 X3 A 0 96 NA 0 97 B 1 00 NA 1 01 C 0 98 0 03 NA A 1 00 NA 1
  • 如何使用 tidymodels 和工作流集在同一数据集上拟合多个不同的线性模型

    我想评估同一数据集上多个 主要是 线性回归模型的性能 我想也许使用tidymodels包连同workflowsets workflow set 可能会起作用 我按照这个例子here https workflowsets tidymodels
  • 无法更改 RStudio 中的 R 版本

    我的 RStudio V 0 99 491 无法更改 R 版本 我以平常的方式行事Global Options gt R Version 然后它挂起并且不再工作或反应 R 运行良好的初始版本是R 3 1 0 我以前从未遇到过这样的问题 也许
  • 如何将plot中的单变量列表图表转换为ggplot2格式?

    我正在搜索 但仍然找不到一个非常简单的问题的答案 我们如何使用 R 中的 ggplot2 生成一个变量的简单线图 我正在分析时间序列数据 并且想要对图表进行更复杂的操作 我认为如果我使用 ggplot2 代替会更好plot It works

随机推荐

  • 对于分配内存的函数,您遵循哪些命名约定?

    所以这里有两个函数几乎做同样的事情 如果您必须将两者都包含在您的项目中 您会如何命名每一个 void strToLower1 char str int len strlen str int i for i 0 i
  • Apache Mod Rewrite:带有 L 参数的 RewriteRule。怎么了?

    我正在开发一个 php 应用程序 但我在 Apache 和 Mod Rewrite 方面遇到了一些问题 有人知道这里出了什么问题吗 RewriteEngine on RewriteBase mysite RewriteRule css cs
  • 如何在 R 中按名称模式删除列?

    我有这个数据框 state county city region mmatrix X1 X2 X3 A1 A2 A3 B1 B2 B3 C1 C2 C3 1 1 1 1 111010 1 0 0 2 20 200 Push 8 12 NA
  • CSS3 背景图像过渡

    我正在尝试使用 CSS 过渡来制作 淡入淡出 效果 但我无法让它与背景图像一起使用 The CSS title a display block width 340px height 338px color black background
  • iPhone自动锁值?

    无法检索自动锁定值吗 或者有人知道如何像现有的警报应用程序一样修改自动锁定时间 Thanks 是的 杰森是对的 您可以使用 application setIdleTimerDisabled YES 停止自动睡眠 但没有办法访问自动锁定值 问
  • 在 Delphi 中以无边框形式/窗口平滑调整大小

    我正在尝试调整无边框表单的大小 但是当我使用右侧 底部增加大小时 边框和旧客户区域之间存在间隙 该间隙取决于移动鼠标的速度 当您从左边框甚至从左下角调整大小时 效果会更加明显 到处都很可怕 我尝试使用其他商业应用程序 它也会发生 当我更改为
  • 在 WPF 中将组合框绑定到 XML

    我知道这个问题已经被问死了 但是我已经尝试了很多我找到的建议答案 并且当我在 VS2013 中启动 WPF 时 组合框仍然没有填充 就这样吧 我有一个名为 People xml 的 XML 文档 其格式如下
  • 如何在 HTML 中定义内联内容库以与 Magnific-Popup 一起使用?

    我的页面上有许多画廊 可以通过各自的按钮启动 我喜欢在按钮旁边定义页面中画廊的标记 然后使用隐藏的想法 mfp hide 但是 当我添加时 我无法激活弹出窗口delegate关键字 否则 这是我到目前为止的代码 HTML div class
  • 如何更改 Rails 迁移 t.timestamps 以在 postgres 中使用 `timestamp(0) without timezone`

    我正在尝试找出如何更改本机数据类型t timestamps用于 Rails 迁移 postgres 中的默认类型是timestamp without timezone 我想要的是timestamp 0 without timezone 我想
  • Spring:确保首先初始化特定的 bean

    我有一个库进行 log4j 的运行时设置和配置 没有 log4j properties 或 log4j xml 我已经定义了一个名为 MyLoggerFactory 的 bean 我希望它成为第一个使用 spring 初始化的 bean 我
  • jQuery DOM 操作 - 性能比较?

    我正在学习使用 jQuery 进行 DOM 操作 并希望了解浏览器性能最佳实践 假设我有两个 DOM 元素 div p ol 等 我希望用户只能看到第一个元素 然后只能看到第二个元素 I could 使用替换 remove 第一个元素和 a
  • javascript中删除小数点后的数字

    var randomNumber Math random 3 3 5 randomNumber alert randomNumber 这段代码返回一个数字 例如 4 589729345235789 我需要它返回 4 5 因此需要它删除小数点
  • 多语言站点,子目录作为语言(RewriteRule)

    对于我的网站 我想将我的网址重写为 www xxx com en index php 而不是 www xxx com index php language enwww xxx com nl index php 而不是 www xxx com
  • 今天全日历开始日期

    我正在努力从今天开始制定完整的日历 当我这样做时 它会显示整周 calendar fullCalendar Options calendar fullCalendar gotoDate currentDate 其中 currentDate
  • 内存数据库的概念以及如何查看我的数据是否已填充到 HSQL DB 中?

    我在内存数据库中使用 HSQL 来测试我的应用程序 并使用 SQL Server 作为主数据库 现在在进行测试时 HSQL 数据库将填充与我在 SQL Server 中相同的数据 现在我正在尝试测试特定的数据从数据库检索数据的服务 如果直接
  • sql 从函数或存储过程返回表

    这更多的是一个语法问题 我正在尝试编写一个可以嵌入到查询中的存储过程或函数 例如 select from MyBigProcOrFunction 我正在尝试定义一个表格函数 但我不明白如何执行此操作 因为我构建临时表来计算数据 然后才最终在
  • 选择最近 7 天的最大值

    我通过每小时插入描述这些项目的记录作为 cron 作业来跟踪某些项目 我有一张桌子 steamid int eventid auto increment itemid int value int time unix format 我使用每小
  • AWS部署经常出现故障

    因此 我在 EC2 实例上进行了非常基本的部署 除了几个大问题外 该部署基本上可以正常工作 现在我只是通过 ssh 进入盒子并运行 python m SimpleHTTPServer 80 我在安全组上有一个框 允许端口 80 上的 htt
  • 在 SQL Server Management Studio 中执行 NHibernate 生成的准备好的语句

    配置 NHibernate 以显示执行的 SQL 可以完成预期的任务 但是每当需要将 SQL 字符串复制粘贴到 SQL Server Management Studio 中时 我们就必须对其进行大幅重新排列才能兼容 在我开始开发自己的应用程
  • 与下一行、分组、data.table 进行比较

    我有一个数据框 其中包含每个用户每周的页面浏览量 我想确定每个用户在特定事件发生后他们的观点是否增加 减少或保持不变 我的数据如下所示 Userid week xeventinweek numviews Alice 1 2 5 Alice