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

R语言MissMech包TestMCARNormality函数非参数MCAR测试报错求助

解决MissMech包TestMCARNormality函数报错及非参数MCAR测试方案

报错原因

你的数据集仅5行,每个缺失模式仅对应1个案例。设置del.lesscases=2会删除所有缺失模式对应的样本,剩余样本量不足以支撑检验计算,因此触发报错。另外需要注意:TestMCARNormality是基于正态分布假设的MCAR检验方法,并非你需要的非参数测试。

临时修复(若坚持使用该函数)

将del.lesscases参数调整为1,或者扩充数据集让至少一种缺失模式对应2个及以上样本:

MissMech::TestMCARNormality(df[naVars], del.lesscases = 1)

非参数MCAR测试的替代方案

以下是两种常用的非参数MCAR检验方法:

1. 基于缺失模式的卡方独立性检验(naniar包)

library(naniar)
# 生成各变量的缺失指示矩阵
miss_ind <- as.data.frame(is.na(df[naVars]))
# 检验缺失模式的独立性(判断是否符合MCAR)
chisq.test(table(miss_ind))

2. mice包的非参数MCAR检验

library(mice)
# 直接运行非参数MCAR检验
mcar_test(df[naVars])

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 13:25:38