You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言事件研究:按appid与事件日分组计算事件前ccu_avg均值

R事件研究估计窗口ccu均值计算方案

核心需求

  • 新增est_ccu_avg列,按appid与Eventdate1组合分组计算,适配单个appid对应多个事件的场景
  • 计算规则:仅统计事件日之前样本的ccu_avg均值,事件日及之后的样本不纳入计算范围

原有代码问题

之前编写的代码存在两个核心错误:

  1. 没有先按appid和Eventdate1分组,会导致全表数据混算
  2. 索引逻辑错误:unique(study$appid)返回的是去重后的appid向量,无法逐行匹配分组范围,直接引用全量study数据集也会突破分组边界

正确实现代码

library(dplyr)

study <- study %>%
  # 按游戏ID、事件日期双维度分组,隔离不同事件的计算范围
  group_by(appid, Eventdate1) %>%
  mutate(
    # 仅保留当前组内日期早于事件日的样本计算均值,na.rm可按需配置是否忽略缺失值
    est_ccu_avg = mean(ccu_avg[datefinal < Eventdate1], na.rm = TRUE)
  ) %>%
  ungroup()

逻辑说明

  • 分组操作后,所有计算会在单个appid+单个Eventdate1的组内独立执行,不会出现跨事件、跨游戏的数据混算
  • 方括号内的datefinal < Eventdate1会逐行判断样本日期是否在事件日之前,仅筛选符合估计窗口要求的ccu_avg值参与均值计算
  • 计算完成后执行ungroup()取消分组,避免后续操作受分组状态影响

用提供的前6行样例数据验证:6条样本的datefinal均早于Eventdate1(18949),计算得到的est_ccu_avg约为30351.83,符合预期。

内容的提问来源于stack exchange,提问作者Sjoerd S

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 19:06:22