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 关于指标分类变量的主要内容,如果未能解决你的问题,请参考以下文章

Cox PH模型中协变量的系数值太大

关于线性回归方程R的值问题,肿么老是1~~急!!!!

R语言使用R基础安装中的glm函数构建乳腺癌二分类预测逻辑回归模型分类预测器(分类变量)被自动替换为一组虚拟编码变量summary函数查看检查模型使用table函数计算混淆矩阵评估分类模型性能

关于在 R 中拟合分类树的问题

数据挖掘——聚类分析总结

001 分类模型评估指标