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

如何处理单数据集含缺失值的Wilcoxon符号秩检验及配对观测数不匹配问题

配对数据分析观测数不匹配问题解决

配对分析的核心前提是两组观测为一一对应的配对关系(如同一受试者的两次检测结果、1:1匹配的病例对照样本),观测数不一致可按以下步骤处理:

  • 第一步核对两组样本的唯一匹配标识(如样本ID、配对编号),定位41条冗余观测的所属分组,排查是否为数据导入、录入环节的遗漏/重复问题
  • 若为匹配逻辑错误,可基于匹配标识做内连接筛选共有的配对样本:
    • R语言可使用merge(数据集1, 数据集2, by = "匹配ID列名")实现
    • Python可使用pandas.merge(数据集1, 数据集2, on = "匹配ID列名", how = "inner")实现
  • 若确认冗余观测为无法完成匹配的有效样本,需将该部分样本排除后再做配对分析,或改用非配对的统计检验方法
    注意:调整样本范围后需在分析报告中明确说明筛选规则,避免结果出现选择性偏倚
含缺失值的Wilcoxon符号秩检验实现

Wilcoxon符号秩检验为配对检验方法,你提到的「单个数据集」通常指单数据集内存储了配对的两组变量,或是单组样本与指定总体中位数做检验的场景,针对缺失值的处理方案如下:

  • 优先做缺失值排查:若单条配对观测的任意一个值存在缺失,默认采用行删除法排除该观测,避免干扰秩次计算;若缺失值占比超过10%,需先验证缺失是否为随机缺失,盲目删除可能导致结果偏差
  • 不同分析工具的实现代码:
    • R语言:调用基础函数即可自动处理缺失值,配对检验代码为wilcox.test(分组1变量, 分组2变量, paired = TRUE, na.rm = TRUE),单样本与指定中位数检验代码为wilcox.test(目标变量, mu = 总体中位数, na.rm = TRUE)
    • Python:使用scipy库实现,配对检验代码为scipy.stats.wilcoxon(分组1序列, 分组2序列, nan_policy='omit'),单样本与指定中位数检验代码为scipy.stats.wilcoxon(目标序列 - 总体中位数, nan_policy='omit')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 15:57:01