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

纵向数据中不同观测次数的受试者统计优化方法问询

高效统计不同观测次数的受试者数量

方法一:使用dplyr链式操作

通过两次分组统计,一步得到所有观测次数对应的受试者数量:

library(dplyr)

obs_count <- dd %>%
  # 第一步:统计每个受试者的观测次数
  group_by(subject_id) %>%
  summarise(obs_times = n()) %>%
  # 第二步:按观测次数分组,统计对应受试者数量
  group_by(obs_times) %>%
  summarise(subject_num = n())

# 查看结果
obs_count

运行后会得到对应示例数据的结果:

# A tibble: 3 × 2
  obs_times subject_num
      <int>       <int>
1         1           4
2         2           3
3         3           2

方法二:使用Base R原生函数

如果不想加载dplyr,用原生函数也能快速实现:

# 先统计每个受试者的观测次数,再统计各次数对应的受试者数量
obs_freq <- table(table(dd$subject_id))

# 转换为数据框格式,方便生成报告表格
as.data.frame(obs_freq, responseName = "subject_num")

转换后的数据框列名分别为Var1(观测次数)和subject_num(对应受试者数量),与dplyr方法的结果一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 14:40:07