【问题标题】:Odds ratio with three level dependent variable三水平因变量的优势比
【发布时间】:2019-01-18 11:52:22
【问题描述】:

我正在尝试计算 3 水平因变量的优势比。

我已经弄清楚如何通过这样做来计算二元抑郁分数(测试分数的最低 25% = 1,所有其他分数 = 0)的优势比:

ODDSR <-glm(DEPRESSION~AGE+MALE+LITERACY+COLLEGE+MARRIED, data = df, family = "binomial")

summary(ODDSR)

exp(cbind(OR = coef(ODDSR), confint(ODDSR)))

但是当我尝试将因变量分为 3 个级别时: - 最低 25% 的抑郁评分 = 0 - 中间 50% 的抑郁评分 = 1 - 前 25% 的抑郁评分 = 2

glm 报告错误并且不会运行。

eval(expr, envir, enclos) 中的错误:y 值必须为 0

甚至可能值得查看 4 个级别的因变量(每个四分位数编号为 0、1、2、3),但我不知道这是否可能。

【问题讨论】:

  • 我们正在设置 family = "binomial" 即:二进制并提供 3 个变量?
  • 正如 zx8754 所建议的那样,具有 > 2 个级别的问题现在是多项式的,而不是二项式的。您可以在nnet 包中尝试例如 multinomstats.idre.ucla.edu/r/dae/multinomial-logistic-regression
  • @zx8754,是的,你是对的,我需要将家庭作为“二项式”取出,但我不知道用什么替换它才能使第三行代码给我 2 组优势比,一种用于中间 50% 的分数与最低 25% 的分数相比,一种用于前 25% 的分数与最低 25% 的分数。
  • 比例赔率逻辑回归。有几个包提供它,包括 rms 包。
  • 还应该查看MASS:polr 的“有序逻辑或概率回归”。与使用 rms::lrm 相比,它的优势在于它不需要 rms 函数所需的附件数据准备。我的偏好是接受额外的努力,作为在 rms“环境”中增加功能的小代价。

标签: r glm


【解决方案1】:

安装包nnet,

library(nnet)
ODDSR <-multinom(DEPRESSION~AGE+MALE+LITERACY+COLLEGE+MARRIED, data = df)
exp(confint(ODDSR)) 
exp(coef(ODDSR))

成功了

【讨论】:

    猜你喜欢
    • 2013-10-08
    • 2017-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多