我正在尝试使用 R 中的 naniar 包运行 MCAR 测试。我有一个包含 52 个变量的数据集(大部分对 Likert 类型量表上的项目的响应)。我收到警告“警告:在norm::prelim.norm(data)中:通过强制到整数范围引入了NA”。我尝试更改数据类型,并对数据帧的子集运行测试。当我对较少数量的变量运行测试时,我没有收到警告,但当我将其增加到大约 31 列时,就会出现错误。这使我得出结论,这可能不是导致问题的特定列。这个警告可以忽略吗?尽管如此,我可以继续解释结果吗?或者有其他方法可以解决吗?
这是因为
naniar::mcar_test()
函数基于 prelim.norm
包中的 norm
函数,可以处理大约 30 个变量。
misty::na.test()
中有对此问题的详细描述
帮助文件(也基于 prelim.norm
。
请注意,
包中的mcar_test
函数也是 基于naniar
函数,结果不可信 每当控制台上出现以下警告消息时: norm::prelim.norm(data) : 通过强制整数范围引入的 NAprelim.norm
当参数 x 中指定了超过 30 个变量时,
函数可能会遇到数值问题,导致 结果不可信。在这种情况下,建议 减少参数 x 中指定的变量数量。prelim.norm
推荐使用
LittleMCAR
包中的BaylorEdPsych
函数,最多可处理50个变量。但是您需要从 CRAN Archive 安装此软件包,因为它是前段时间存档的。这意味着您必须手动安装它。也许 MissMech 包也可以工作 - 但没有检查这个。