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

对比两个数据集的edta_complete列,求完整条目数及差异subject_id

处理EDTA完整性数据集的统计与差异分析

需求说明

  • 现有两个数据集df和df1,其中edta_complete列的0代表数据不完整,1代表数据完整
  • 需要完成两项操作:
    1. 分别统计两个数据集中edta_complete=1的subject_id数量
    2. 对比两个数据集,找出完整条目更多的那个数据集中,与另一个数据集存在差异的subject_id

示例数据集

df

df <- structure (list(subject_id = c("191-5467", "191-6784", "191-3457", "191-0987", "191-1245", "191-2365"), edta_complete = c("1","0","1","1","1","0")), class = "data.frame", row.names = c (NA, -6L))

df1

df1 <- structure (list(subject_id = c("191-5467", "191-6784", "191-3457", "191-0987", "191-1245", "191-2365"), edta_complete = c("1","1","1","1","1","1")), class = "data.frame", row.names = c (NA, -6L))

1. 统计完整条目数量

# 统计df中edta_complete=1的条目数
df %>% filter(edta_complete == 1) %>% nrow()
# 输出:[1] 4

# 统计df1中edta_complete=1的条目数
df1 %>% filter(edta_complete == 1) %>% nrow()
# 输出:[1] 6

2. 找出差异的subject_id

通过合并数据集对比edta_complete列的取值,筛选出df1中标记为完整但df中标记为不完整的subject_id:

# 合并两个数据集,保留subject_id和对应edta_complete值
merged_df <- merge(df, df1, by = "subject_id", suffixes = c("_df", "_df1"))

# 筛选差异条目
diff_subjects <- merged_df %>%
  filter(edta_complete_df == "0" & edta_complete_df1 == "1") %>%
  pull(subject_id)

# 输出结果
diff_subjects
# 输出:[1] "191-6784" "191-2365"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 18:45:50