当 type="response" 时 emmeans 置信区间中的错误?
bug in emmeans confidence intervals when type="response"?
似乎在 type="response"
时对 emmeans 对象调用 confint()
会产生虚假结果。
示例:
- 没有 type="response" :
Condition = A:
contrast estimate SE df z.ratio p.value
Y - X 0.496 0.296 Inf 1.676 0.0937
confint()
提供的置信区间一致,因为它们过零:
Condition = A:
contrast estimate SE df asymp.LCL asymp.UCL
Y - X 0.496 0.296 Inf -0.084 1.076
但现在看看当 emmeans 被要求时会发生什么 type="response"
。
我应该注意到这是来自 family="binomial" 的 glmer 模型,因此估计值是比值比,或者在这种情况下,从 logit 反向转换:
- with type="response":
Condition = A:
contrast odds.ratio SE df z.ratio p.value
Y / X 1.64 0.486 Inf 1.676 0.0937
所以你在这里看到,z 比率和 p 值是相同的,应该是这样的。但是看看当你调用 confint()
:
时会发生什么
Condition = A:
contrast odds.ratio SE df. asymp.LCL asymp.UCL
Y / X 1.64 0.486 Inf 0.919 2.93
突然间,置信区间 不 过零,即使之前 p 值 = 0.0937 并且非反向转换 CI 确实过零。
这是怎么回事,这是一个错误吗???
比值比始终为正数。而且,它是一个比率,而不是差异。当两个量的比率为 1 时,它们是相同的。注意区间有小于1的下限和大于1的上限;与您的测试结果一致。
最后请注意,您可以直接从logits差值的区间得到这个区间:exp{-0.084}=0.919和exp{1.076}=2.93。
似乎在 type="response"
时对 emmeans 对象调用 confint()
会产生虚假结果。
示例:
- 没有 type="response" :
Condition = A:
contrast estimate SE df z.ratio p.value
Y - X 0.496 0.296 Inf 1.676 0.0937
confint()
提供的置信区间一致,因为它们过零:
Condition = A:
contrast estimate SE df asymp.LCL asymp.UCL
Y - X 0.496 0.296 Inf -0.084 1.076
但现在看看当 emmeans 被要求时会发生什么 type="response"
。
我应该注意到这是来自 family="binomial" 的 glmer 模型,因此估计值是比值比,或者在这种情况下,从 logit 反向转换:
- with type="response":
Condition = A:
contrast odds.ratio SE df z.ratio p.value
Y / X 1.64 0.486 Inf 1.676 0.0937
所以你在这里看到,z 比率和 p 值是相同的,应该是这样的。但是看看当你调用 confint()
:
Condition = A:
contrast odds.ratio SE df. asymp.LCL asymp.UCL
Y / X 1.64 0.486 Inf 0.919 2.93
突然间,置信区间 不 过零,即使之前 p 值 = 0.0937 并且非反向转换 CI 确实过零。
这是怎么回事,这是一个错误吗???
比值比始终为正数。而且,它是一个比率,而不是差异。当两个量的比率为 1 时,它们是相同的。注意区间有小于1的下限和大于1的上限;与您的测试结果一致。
最后请注意,您可以直接从logits差值的区间得到这个区间:exp{-0.084}=0.919和exp{1.076}=2.93。