r - 具有多个类别预测变量和数字预测变量的二元结果的对数二项式回归
问题描述
我正在尝试从具有二进制结果的对数二项式回归中获得 RR。有两个分类变量:治疗和组,两个数字变量:年龄和 BMI。但我收到一个错误 错误:找不到有效的起始值:请指定一些。请问我该如何解决这个错误?
N <- 50
data.1 <- data.frame(Outcome=sample(c(0, 0, 1), N, rep=T), Age=runif(N, 8, 58),
BMI=rnorm(N, 25, 6), Group=rep(c(0, 1), length.out=N),
treatment=rep(c('1', '2', '3'), length.out=N))
data.1$Group <- as.factor(data.1$Group)
coefini <- exp(coef(glm(Outcome ~ Group + treatment + Age + BMI, data=data.1,
family=binomial(link="logit"))))
fit2 <- glm(Outcome ~ Group + treatment + Age + BMI, data=data.1,
family=binomial(link="log"), start=coefini)
解决方案
似乎是因为逻辑回归的系数不适用于对数二项式回归。用第三行替换coefini=coef(glm(Outcome~Group+treatment+Age+BMI, data=data.1,family =binomial(link = "log") ))
它就可以了。(删除exp
并将链接更改为log
。)
推荐阅读
- r - 如何合并R中具有不同列名的两个数据集?
- ios - 为什么 UIAccessibilityNotification 不转向正确的论点?
- powershell - 使用 GitHub 包注册表作为 PowerShell 包存储库
- quarkus - Quarkus 异常处理程序
- java - 在 Chrome 中运行 selenium 测试用例时无法从弹出框加载扩展
- node.js - Mongodb服务器选择超时与nginx,nodejs
- docker - 有没有办法查看完整的 Docker 映像继承?
- swift - 是否可以使用 SwiftUI 将键盘上的“返回”键更改为“完成”?
- c# - 用重复的代码重构静态类c#
- python - 合并排序算法中的中断递归