如何在R中通过ID计算日期之间的平均差异

2023-12-14

我有如下数据集,我想计算每个唯一 id 的平均时间差

data:
   membership_id created_date 
1       12000000 2015-01-20   
2       12000001 2012-11-19   
3       12000001 2013-10-07   
4       12000001 2014-03-06   
5       12000001 2015-01-14   
6       12000003 2013-02-08   
7       12000003 2014-03-06
8       12000000 2014-02-05
9       12000000 2012-01-06

从上面的数据集中,我想计算每个唯一 ID 的日期之间的平均时间差

TRIED:

 library(plyr)
 data =data[order(data$membership_id,data$created_date),]
 result = ddply(data,.(membership_id),summarize, avg =  as.numeric(mean(diff(created_date))))

当我应用小数据时,上面的代码工作正常,但我的数据集有 500 万行,并且花费了大量时间,而且仍然从过去 6 小时开始运行

预期输出:

  membership_id  avg_time_diff
 1 12000000       76 days
 2 12000001       56 days
 3 12000003       54 days

来自(哪里plyr,你可能可以很容易地过渡到dplyr。它不会像数据表那么快,但它会much比...快ddply.

dat %>% group_by(membership_id) %>%
    arrange(created_date) %>%
    summarize(avg = as.numeric(mean(diff(created_date))))
# Source: local data frame [3 x 2]
#
#   membership_id   avg
#           (int) (dbl)
# 1      12000000   555
# 2      12000001   262
# 3      12000003   391

无需任何更多的实际努力,您可以通过转换为更快的速度data.table对象但仍然使用dplyr命令。纯的data.table仍然会更快。

(使用此数据)

dat = structure(list(membership_id = c(12000000L, 12000001L, 12000001L, 
12000001L, 12000001L, 12000003L, 12000003L, 12000000L, 12000000L
), created_date = structure(c(16455, 15663, 15985, 16135, 16449, 
15744, 16135, 16106, 15345), class = "Date")), .Names = c("membership_id", 
"created_date"), row.names = c("1", "2", "3", "4", "5", "6", 
"7", "8", "9"), class = "data.frame")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在R中通过ID计算日期之间的平均差异 的相关文章

  • r : 直方图上的 ECDF

    在 R 中 与ecdf我可以绘制经验累积分布函数 plot ecdf mydata 与hist我可以绘制数据的直方图 hist mydata 如何在同一图中绘制直方图和 ecdf EDIT 我尝试做类似的东西 https mathemati
  • Shiny 中的模态对话框:可以调整宽度但不能调整高度

    在我的 Shiny 应用程序中 我有几个来自闪亮BS 包的模式窗口 我可以像这样调整这些模式窗口的宽度 tags head tags style HTML modal lg width 1200px abs 1 background col
  • 返回带有参数的函数的函数

    创建一个应返回包含原始函数参数的函数时 我应该如何处理 例如考虑这个函数 a lt function value function x x value 我希望它返回我在结果函数的参数中指定的值 如下所示 b lt a 3 gt b gt f
  • 从 R 主题模型中的 DocumentTermMatrix 中删除空文档?

    我正在使用 R 中的 topicmodels 包进行主题建模 我正在创建一个 Corpus 对象 进行一些基本的预处理 然后创建一个 DocumentTermMatrix corpus lt Corpus VectorSource vec
  • 在 for 循环中绘制的多个 ggplot2 绘图的网格

    作为一个新的 ggplot2 用户 我对可能性的数量感到有点迷失 并且很难在网上找到我认为简单问题的简单答案 我想在同一张纸上显示 ggplot2 的多个图 但知道这些图来自 for 循环 以下示例无法编译 仅用于说明 for i in c
  • 在 R 中读取 Stata 13 文件

    有没有办法在 R 中读取 Stata 版本 13 数据集文件 我尝试执行以下操作 gt library foreign gt data read dta TEAdataSTATA dta 但是 我收到一个错误 read dta TEAdat
  • 有效地将环境从内部功能转移到全局环境

    我有一个在其中创建环境的函数 我希望将该环境分配给全局环境 目前我通过将环境分配给来做到这一点globalenv 作为最后一步 如下 funfun lt function inc 1 dataEnv lt new env dataEnv d
  • ggplot 中跨组的连续线

    我有一个数据时间序列 其中观察了一些数据 模拟了一些数据 我想生成整个数据系列随时间变化的图 其中颜色表示数据源 但是 我只能弄清楚如何使 ggplot 中的 geom line 连接同一组中的点 这是一个例子来说明 Create samp
  • 将文本添加到 ggplot 中的轴标签

    我从下表中绘制了一个图表 BoatPhs fit se lower upper 1 Before 3 685875 0 3287521 3 038621 4 333130 2 After0 20NTA 3 317189 0 6254079
  • 使用 ggplotly(ggplot2 withplotly)时可以去掉注释中的跟踪标签吗?

    使用ggplotly时是否可以删除注释中的跟踪标签 例如 library ggplot2 library plotly g lt ggplot iris aes Sepal Width Sepal Length geom point ann
  • 按绝对值排序

    有谁知道如何按绝对值对 R 中的向量进行排序 所以 2 3 1 gt 1 2 3 etc 如果我在 python 中这样做 我会创建一对每个值及其符号 按绝对值对对列表进行排序 然后重新应用符号 但我对 R 很陌生 所以不知道如何执行此操作
  • 通过 RSelenium 单击按钮

    我正在尝试使用 Rselarium 和 Rvest 来抓取 REI 的评论 吊床 我想点击底部的按钮 x 次 这样我就可以抓取所有评论 我有点失落 这是我到目前为止所拥有的 如果您也知道如何在取景器中预览您正在做的事情 而不是屏幕打印 那就
  • 使用 SparkR 1.5 从 RStudio 中的 hdfs 读取大文件(纯文本、xml、json、csv)的选项

    我是 Spark 新手 想知道除了下面的选项之外是否还有其他选项可以使用 SparkR 从 RStudio 读取存储在 hdfs 中的数据 或者我是否正确使用它们 数据可以是任何类型 纯文本 csv json xml 或任何包含关系表的数据
  • 带有嵌套分组变量的多行轴标签,用于 - R 中的堆积条形图

    我想使用 ggplot 制作一个包含多个类别的堆叠条形图 并带有嵌套的标记 X 轴 类似于我使用 Excel 制作的条形图 如此处所示 我尝试使用给出的例子here https stackoverflow com questions 181
  • 如何在 R 中查找平衡面板数据(又名,如何查找面板中的哪些条目在给定窗口内完整)

    我有来自 Compustat 的大量数据 我向其中添加了一些手工收集的数据 认真地从一堆旧书中手工收集 但我不想手工收集整个面板 只想随机选择一个子集 为了找到更大的集合 我从中随机选择 我想从 Compustat 的平衡面板开始 我看到p
  • 创建序列组合

    我正在尝试解决以下问题 考虑 5 个简单序列 0 100 100 0 rep 0 101 rep 50 101 rep 100 101 我需要 3 个数字变量的集合 它们的所有组合都具有上述序列 由于有 5 个序列和 3 个变量 因此可以有
  • 根据共同值对两个数据帧求和

    我有一个看起来像的数据框 day of week count 1 0 3 2 3 1 3 4 1 4 5 1 5 6 3 另一个喜欢 day of week count 1 0 17 2 1 6 3 2 1 4 3 1 5 4 5 6 5
  • 将 csv 文件上传到shinyApps.io

    我的应用程序在本地运行良好 并且我能够成功地将应用程序部署到shinyapps io 服务器 但是当我尝试使用shinyapps URL 在浏览器中加载应用程序时 收到以下错误消息 错误对象 数据 不是成立 我认为这是因为 data 变量从
  • 当在另一行中找到元素逗号分隔时合并行

    您好 我有一个数据框 例如 species family Events groups 1 SP1 A 10 22 G1 2 SP1 B 7 G2 3 SP1 C D 4 5 6 1 3 G3 G4 G5 G6 4 SP2 A 22 10 G
  • R 在安装包依赖项时不考虑最大版本

    假设我正在开发一个名为magicr做一些统计魔术 我希望它使用另一个名为的包中的函数fairydust 假设 存在于 CRAN 上 很遗憾fairydust刚刚向 CRAN 发布了 2 0 0 版本 完全破坏了我计划使用的功能 所以我更新了

随机推荐

  • 字符串值到字节数组而不进行转换

    我试图将字符串的值放入字节数组中而不更改字符 这是因为字符串实际上是数据的字节表示 目标是将输入字符串移动到字节数组中 然后使用以下方法转换字节数组 string result System Text Encoding UTF8 GetSt
  • 方法重载是否被视为多态? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 方法重载是否被视为多态性的一部分 多态性有不同类型 重载多态性 也称为临时多态性 压倒一切的多态性 所以是的 它是多态性的一部分
  • 使用 Java 对 LPT 端口进行编程。真的吗?

    状况 OS is Windows XP have LPT port LED 灯泡连接到LPT port 必要的 使用Java使灯泡闪烁 是否可以 对真实 经过验证的解决方案感兴趣 有人这样做过吗 我有几个选择 使用javax comm an
  • Android 无法在外部存储上创建文件

    我想创建一个 txt 文件并将其存储在 Android 手机的外部存储中 我将权限添加到我的 Android 清单中 当我运行代码时 它不会给我任何错误 但文件从未创建 不确定我做错了什么 public void createExterna
  • Rails 3 路由约束和正则表达式

    我正在寻找匹配的模式state city在路径中 除非状态变量等于 auth match state city gt cities index as gt state cities constraints gt state gt auth
  • GCC 的 -Wmaybe-uninitialized 是否会针对基于枚举的 switch 语句使用 -O1 生成虚假警告?

    我有一段以下形式的代码 typedef enum A 1 B EnumType int foo EnumType x int r switch x case A r 1 break case B r 2 break default r 1
  • JDBC总是测试MySQL表的最后一行?

    我有一个 Manager 类 它将数据保存在 SQL 表中 并从 SQL 表中获取结果并测试这些数据 当我运行程序时 将显示一个框架 用于获取 ID 和密码 如果它们正确 则另一个框架将显示但我不知道为什么它只测试 SQL 表的最后一行 我
  • 当我删除标记所在的行时让vim保留标记

    当我删除标记所在的行时 如何让 vim 保留标记 即自动将标记移动到标记行的上方或下方的行 也许最简单的方法是当您不想删除它们时使用大写字母标记 如果标记所在的行被删除 它将移至下一行 另一种选择是lockmarks命令 lockmarks
  • python中同一类的实例之间共享变量

    我有一个我需要的课程 第一个实例必须接收一个参数 以下所有实例的此参数都是可选的 如果没有通过那么我将使用之前对象init的参数 为此 我需要在对象之间共享一个变量 所有对象都属于具有相同父级的类 例如 class MyClass shar
  • 如何在 open gl 纹理的 alpha 中编码发射或镜面反射信息

    我有一个带有 UV 贴图的 OpenGL 纹理 我读过有关使用 alpha 通道来存储其他一些值的信息 这样就无需从某处加载额外的地图 例如 您可以在 Alpha 中存储镜面反射信息 光泽度 或发射贴图 因为您只需要一个浮点数 并且不使用
  • PHP函数的范围[重复]

    这个问题在这里已经有答案了 我有一个文件 将我的可重用函数集中到一个文件中 functions php It s include once 在每个需要它的页面上 当我的自定义函数尝试访问其自身范围之外的 MySQL 连接时 我收到错误 来源
  • 带有函数应用的类型化抽象语法树

    我正在尝试编写一个可以表示的类型化抽象语法树数据类型 功能应用 到目前为止我已经 type Expr lt a gt Constant of a Application of Expr lt b gt a gt Expr lt b gt e
  • Appcompat actionbar v21 应用程序图标未显示

    出于材料设计目的 我升级到了 avtionbar app compat v21 但我观察到 与旧的应用程序兼容库相比 它在操作栏中不显示应用程序图标 导航菜单和后退按钮占用了更多空间 有人遇到过这个问题吗 我搜索了很多 但没有发现任何有用的
  • 无法使用 FastAPI 访问或打印任何请求数据

    我有一个简单的 FastAPI 端点 我想在其中接收字符串值 在本例中 我尝试使用 JSON 正文 但基本上不需要是 JSON 我真的只需要一个简单的字符串来将请求彼此分开 不幸的是 我无法使用以下命令访问任何请求参数GET方法 我也尝试过
  • 如何将 Excel 电子表格配置为 javax.sql.DataSource?

    我有一个 Spring Boot 1 3 0 Java 8 应用程序 需要使用 Excel 作为数据源 由于 Excel 文件类型的原因 POI 和 JXL 不起作用 应用程序需要在 unix 环境中运行 我将应用程序配置为通过 yml 文
  • 在 web.config 中保留敏感信息

    将用户名或密码存储在中是否安全web config作为其他参数 例如超时时间在ASP NET MVC应用程序 如果不是 是否可以使这些参数变得安全 以便它们不能被编码在web config文件在发布的服务器上 另一方面 您是否建议将用户名
  • 将 ImageView 保存到 Android 模拟器库

    我想将图像保存到 Android Gallery 这是我当前的代码 image setDrawingCacheEnabled true image buildDrawingCache true Bitmap b image getDrawi
  • 必须声明标量变量

    首先 我创建了一个包含一列的内存表 并使用这些列值与另一个表进行内部联接 这样做时我收到此错误 必须声明标量变量 暂时的 谁能解释一下我哪里出了问题 DECLARE ID INT Declare Temporary Table Accoun
  • fortran 代码中 Rectilinear_grid 的二进制 vtk 无法通过 paraview [重复]

    这个问题在这里已经有答案了 我使用了 stackoverflow 发布的代码并将其修改为 program VTKBinary implicit none real 4 x 2 0 1 real 4 y 2 0 1 real 4 z 2 0
  • 如何在R中通过ID计算日期之间的平均差异

    我有如下数据集 我想计算每个唯一 id 的平均时间差 data membership id created date 1 12000000 2015 01 20 2 12000001 2012 11 19 3 12000001 2013 1