gpt4 book ai didi

r - 从 coxph 中提取 P 值

转载 作者:行者123 更新时间:2023-12-04 15:38:15 28 4
gpt4 key购买 nike

我运行以下代码并获得一个名为 res.cox 的对象,当我打印它时我可以看到它的 p 值

res.cox <- coxph(
Surv(DB$time,DB$event) ~
age + gender + var1 + var2 + ... + varN
, data = DB)

我可以通过以下方式轻松提取 HR 和 Conf 间隔:

HR <- round(exp(coef(res.cox)), 2)
CI <- round(exp(confint(res.cox)), 2)

但无论我尝试什么,我都无法提取 P 值列表。

如有任何帮助,我们将不胜感激。

最佳答案

通常,在调用 summary() 方法之前,包括 p 值在内的统计信息尚不可用。 (调用 res.cox 直接产生一个 p 值,但可能涉及一个不可见的 summary 调用。)

例子

library(survival)
res.cox <- coxph(Surv(time, status) ~ x + strata(sex), test1)

查看 str() 结构会发现只有 beta 而没有统计数据。

str(res.cox)

而在 summary() 中,它们在 "coefficients" 中可用。

str(summary(res.cox))

所以让我们开始吧。

res.cox.sum <- summary(res.cox)$coefficients

您获得的对象是一个“矩阵”,因此可以这样处理。

class(res.cox.sum)
# [1] "matrix"

由于所需的 p 值在第五列中,因此:

res.cox.sum[, 5]
# [1] 0.3292583

或简称:

summary(res.cox)$coefficients[, 5]
# [1] 0.3292583

数据

test1 <- structure(list(time = c(4, 3, 1, 1, 2, 2, 3), status = c(1, 1, 
1, 0, 1, 1, 0), x = c(0, 2, 1, 1, 1, 0, 0), sex = c(0, 0, 0,
0, 1, 1, 1)), class = "data.frame", row.names = c(NA, -7L))

关于r - 从 coxph 中提取 P 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59029007/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com