R coxph 关于指标分类变量
Posted
技术标签:
【中文标题】R coxph 关于指标分类变量【英文标题】:R coxph on indicator categorical variables 【发布时间】:2021-07-17 05:42:10 【问题描述】:我正在尝试使用分类变量来计算风险比,但是将其中任何一个定义为参考因子是没有意义的。我想要的比较是每组单独与其他样本进行比较(即标记为 A 的样本与未标记为 A 的所有样本;标记为 B 的样本与未标记为 B 的所有样本)。默认情况下,coxph 会将每个组与参考组进行比较(即标记为 B 的样本与标记为 A 的样本;标记为 C 的样本与标记为 A 的样本)。但是,如果我尝试将它们编码为虚拟变量以以这种方式强制它,最后一个总是给出 NA 结果。有没有办法做我正在尝试的事情,或者有没有办法解决我目前的做法?
例子:
coxph(formula = Surv(Time, Status) ~ class_A + class_B +
class_C + class_D, data = data)
coef exp(coef) se(coef) z p
class_A -2.1185 0.1202 0.4093 -5.175 2.27e-07
class_B -1.9059 0.1487 0.6825 -2.792 0.00523
class_C -1.1212 0.3259 0.4179 -2.683 0.00729
class_D NA NA 0.0000 NA NA
【问题讨论】:
您能否提供一个可重现的数据示例,以便我们了解您是如何获得结果的?您可以使用dput(data)
并在此处发布,因此我们也有数据
【参考方案1】:
如果我理解得很好,您的变量只有四个类别。然后你应该只传递三个虚拟变量,因为它们中的四个总和为 1,并与常数(基线)项产生共线性(因此你在输出中得到 NA)。得到的系数是对具有省略类的模型的附加效应。
使用三个虚拟变量是 R 在将因子作为单个变量传递时默认执行的操作。如果你想改变这种行为,你需要改变 R 选项中的“对比”类型(例如https://www.dummies.com/programming/r/how-to-set-the-contrasts-for-your-data-with-r/)或转换获得的系数。
【讨论】:
以上是关于R coxph 关于指标分类变量的主要内容,如果未能解决你的问题,请参考以下文章
R语言使用R基础安装中的glm函数构建乳腺癌二分类预测逻辑回归模型分类预测器(分类变量)被自动替换为一组虚拟编码变量summary函数查看检查模型使用table函数计算混淆矩阵评估分类模型性能