Logistic 回归优势比 R 中的异常值

问题描述 投票:0回答:1

我有一个包含响应变量

COVID.Vaccines
的数据集,我想以
Gender
作为解释变量执行逻辑回归。我的脚本旨在查找优势比、95% CI 以及每个级别(男性和女性)的 p 值:

# Fit logistic regression model
my_data$Gender <- relevel(my_data$Gender, ref = "Male")
model <- glm(COVID.Vaccines ~ Gender, data = my_data, family = "binomial")

# Get coefficients
coefficients <- coef(model)

# Get standard errors
standard_errors <- summary(model)$coefficients[, "Std. Error"]

# Calculate odds ratios
odds_ratios <- exp(coefficients)

# Calculate lower and upper confidence intervals
lower_ci <- exp(coefficients - 1.96 * standard_errors)
upper_ci <- exp(coefficients + 1.96 * standard_errors)

# Combine results into a data frame
results <- data.frame(
  Expl_Var = names(coefficients),
  Odds_Ratio = odds_ratios,
  CI = paste0(round(lower_ci, 3), "-", round(upper_ci, 3)),
  P_Value = summary(model)$coefficients[, "Pr(>|z|)"]
)

# Print results
print(results)

我一直得到男性的优势比为 3,这是没有意义的,因为优势比应该与其自身进行比较(换句话说,它应该等于 1)。我的脚本有问题吗?

已尝试强制引用为男性,但无论引用是哪个,我都会得到不寻常的 OR

r statistics
1个回答
0
投票

如 Stefan 提供的链接所示,拦截值(在您的情况下为男性)是事件在参考(男性)中发生的对数几率。如果 beta0 的指数为 3,则意味着男性结果的预期赔率是 3,即概率为 0.75,即概率 = odds/(1+odds)。因此,这表明 3/4 的男性有

COVID.Vaccines = 1

只有在查看第二个 beta 系数时才能看到男性和女性之间的对比,而第一个只能用于获得基础概率。

© www.soinside.com 2019 - 2024. All rights reserved.