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.。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。