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

R语言epitools/questionr包oddsratio函数计算逻辑及结果问询

关于R语言epitools::oddsratio与questionr::odds.ratio的计算逻辑问题解答

问题1:2×2矩阵手动计算与函数结果差异

你手动计算的比值比(OR)是基于“行=暴露组/非暴露组,列=病例/对照”的假设,得到的 crude OR 为 (1/3)/(6/1) = 1/18 ≈ 0.0556,但epitools::oddsratio(m)$measure给出0.085075,核心原因可能有两个:

  • 矩阵行列的对齐逻辑不符:epitools::oddsratio默认将矩阵的行定义为结局(病例/对照),列定义为暴露状态,如果你的手动计算是反过来的,就会出现偏差。可以通过rev参数调整行列顺序,比如oddsratio(m, rev="row")来匹配你手动计算的分组逻辑。
  • 校正估计的使用:当2×2矩阵存在极小单元格计数(比如你的矩阵里有两个1),部分版本的函数可能默认启用了连续性校正或贝叶斯先验校正,导致点估计与 crude OR 不同。你可以显式指定method="wald"并关闭校正(如果支持),比如oddsratio(m, method="wald", correction=FALSE),看结果是否与手动计算一致。

另外,questionr::odds.ratio的默认逻辑是计算行变量相对于列变量的OR,同样需要确认你的矩阵行列定义是否与函数默认匹配。

问题2:3行2列矩阵的多组OR计算

当输入3行2列矩阵时,epitools::oddsratio(m)$measure输出的3行结果中,第一行是参考组(默认第一行作为基准),第二行是第二行相对于第一行的OR,第三行是第三行相对于第一行的OR——也就是将第一行作为对照,分别计算其余两行与它的比值比。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 17:02:53