pseudo
位于 survival
包(package)。 说明
从生存曲线生成伪值。
用法
pseudo(fit, times, type, addNA=TRUE, data.frame=FALSE, minus1=FALSE, ...)
参数
fit |
|
times |
时间点向量,在该时间点评估伪值。 |
type |
值的类型,状态 |
addNA |
如果由于 |
data.frame |
如果为 TRUE,则将 "long" 形式的数据作为 data.frame 返回,其中 id、时间和伪值作为变量。 |
minus1 |
使用 n-1 作为乘数而不是 n |
.
... |
|
细节
该函数根据一阶泰勒级数计算伪值,也称为"infinitesimal jackknife" (IJ) 或"dfbeta" 残差。为了完全正确,这些结果可能被称为“IJ 伪值”,甚至是伪psuedo-values。然而,对于中等到大数据,结果值在数值上几乎与普通折刀相同。
这种方法的主要优点是计算速度。其他特征(不好或坏)是,它们将与其他生存包估计的稳健标准误差一致,这些估计基于 IJ,并且对受试者的估计平均值正是基本的生存估计。
对于 type
变量, surv
是 pstate
可接受的同义词,而 rmst
和 rmts
相当于 sojourn
。所有这些都不区分大小写。
该例程的结果只是 IJ 值的 n 倍,其中 n 是受试者的数量。 (如果包含 survfit
调用和 id
选项,则 n 是唯一 id 值的数量,否则是数据集中的行数。)针对 Aalen-Johansen 估计的所有变体都明确定义了 IJ 值,由 survfit
函数计算;事实上,它们是结果标准误差的基础。然而,对 pseudo-values 属性的理解仍在不断发展。对于最简单的情况 (Kaplan-Meier)、竞争风险以及相应的停留时间,有效性已得到证明。另一方面,当数据包含left-truncation(P.K. Andersen,个人通讯)以及累积危险的pseudo-values时,必须小心。随着理解的发展,将此例程的结果视为更复杂模型的研究工具,而不是生产工具。
值
向量、矩阵或数组。第一个维度始终是 fit
对象中的观测值数量,与原始数据集的顺序相同(减去创建 survfit 对象时删除的任何缺失值);第二个(如果适用)对应于 fit$states
,例如,多状态生存,以及所选时间点的最后一个维度。 (如果给定 id 有多行,则每个唯一 id 只有一个伪值。)
对于 data.frame 选项,包含 id、时间和伪值的数据帧。如果原始 survfit
调用包含 id
语句,则 id
列中的值将从该变量中获取。如果 id
语句具有简单的形式,例如 id = patno
,则 id 列的名称将为 ‘patno’,否则将命名为“(id)”。
注意
如果在 survfit
调用中使用 model=TRUE
选项,代码会稍微快一些。如果在另一个函数中使用 survfit/pseudo 对,这可能是必要的。
例子
fit1 <- survfit(Surv(time, status) ~ 1, data=lung)
yhat <- pseudo(fit1, times=c(365, 730))
dim(yhat)
lfit <- lm(yhat[,1] ~ ph.ecog + age + sex, data=lung)
# Restricted Mean Time in State (RMST)
rms <- pseudo(fit1, times= 730, type='RMST') # 2 years
rfit <- lm(rms ~ ph.ecog + sex, data=lung)
rhat <- predict(rfit, newdata=expand.grid(ph.ecog=0:3, sex=1:2), se.fit=TRUE)
# print it out nicely
temp1 <- cbind(matrix(rhat$fit, 4,2))
temp2 <- cbind(matrix(rhat$se.fit, 4, 2))
temp3 <- cbind(temp1[,1], temp2[,1], temp1[,2], temp2[,2])
dimnames(temp3) <- list(paste("ph.ecog", 0:3),
c("Male RMST", "(se)", "Female RMST", "(se)"))
round(temp3, 1)
# compare this to the fully non-parametric estimate
fit2 <- survfit(Surv(time, status) ~ ph.ecog, data=lung)
print(fit2, rmean=730)
# the estimate for ph.ecog=3 is very unstable (n=1), pseudovalues smooth it.
#
# In all the above we should be using the robust variance, e.g., svyglm, but
# a recommended package can't depend on external libraries.
# See the vignette for a more complete exposition.
参考
PK Andersen and M Pohar-Perme, Pseudo-observations in surivival analysis, Stat Methods Medical Res, 2010; 19:71-99
也可以看看
相关用法
- R pspline 使用 pspline 基础平滑样条线
- R pbc 梅奥诊所原发性胆汁性胆管炎数据
- R plot.survfit survfit 对象的绘图方法
- R print.aareg 打印 aareg 对象
- R pyears 人年
- R predict.coxph Cox 模型的预测
- R plot.aareg 绘制 aareg 对象。
- R plot.cox.zph 比例风险的图形测试
- R print.survfit 打印生存曲线的简短摘要
- R print.summary.survfit 打印生存总结
- R predict.survreg “survreg”对象的预测值
- R print.summary.survexp 打印 Survexp 摘要
- R pbcseq 梅奥诊所原发性胆汁性肝硬化,序贯数据
- R print.summary.coxph Summary.coxph 对象的打印方法
- R hoel 小鼠癌症数据
- R survcondense 缩短 (time1, time2) 生存数据集
- R myeloid 急性粒细胞白血病
- R tobin 托宾的托比特数据
- R levels.Surv 返回多状态 Surv 对象的状态
- R rats Mantel 等人的大鼠治疗数据
- R diabetic 糖尿病视网膜病变
- R kidney 肾导管数据
- R stanford2 更多斯坦福心脏移植数据
- R residuals.survreg 计算“survreg”对象的残差
- R cgd0 慢性肉芽肿病数据
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Pseudo values for survival.。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。