當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R quantile.survfit 來自 surfit 對象的分位數


R語言 quantile.survfit 位於 survival 包(package)。

說明

從 survfit 或 Surv 對象中檢索它們的分位數和置信區間。

用法

## S3 method for class 'survfit'
quantile(x, probs = c(0.25, 0.5, 0.75), conf.int = TRUE,
  scale, tolerance= sqrt(.Machine$double.eps), ...)
## S3 method for class 'survfitms'
quantile(x, probs = c(0.25, 0.5, 0.75), conf.int = TRUE,
  scale, tolerance= sqrt(.Machine$double.eps), ...)
## S3 method for class 'survfit'
median(x, ...)

參數

x

surfit 函數的結果

probs

值為 [0,1] 的概率數值向量

conf.int

是否應該返回置信上限和下限?

scale

可選比例因子,例如,如果擬合對象以天為單位,則 scale=365.25 將返回以年為單位的結果。

tolerance

檢查生存曲線是否完全等於分位數之一的容差

...

其他方法的可選參數

細節

生存曲線 S(t) 的第 k 個分位數是高度 p= 1-k 處的水平線與 S(t) 繪圖相交的位置。由於 S(t) 是階躍函數,因此曲線可能恰好在 1-k 處具有水平線段,在這種情況下,返回水平線段的中點。這反映了數據未經審查時中位數的標準行為。如果生存曲線未降至 1-k,則該分位數未定義。

為了與其他分位數函數保持一致,該函數的參數prob適用於累積分布函數F(t) = 1-S(t)。

值的置信限基於 1-k 處水平線與生存曲線上限和下限的交點。因此,置信限使用與創建曲線時相同的 p 值,並且會根據 survfitconf.type 選項而有所不同。如果生存曲線沒有置信帶,則分位數的置信限不可用。

當生存曲線的水平段與所請求的分位數之一完全匹配時,返回的值將是水平段的中點;這與未經審查的數據中位數的通常定義一致。然而,由於生存曲線是作為一係列乘積計算的,因此可能存在舍入誤差。例如,假設樣本大小為 20,沒有固定時間且沒有審查。第 10 次死亡後的生存曲線是 (19/20)(18/19)(17/18) ... (10/11) = 10/20,但計算結果不會正好是 0.5。與請求百分位的絕對差小於tolerance 的任何水平段都被視為完全匹配。

如果 survfit 對象僅包含一條曲線,則分位數將是一個向量,否則它將是一個矩陣或數組。在這種情況下,最後一個維度將索引分位數。

如果請求置信限,則結果將是一個包含 quantilelowerupper 組件的列表,否則它是分位數的向量或矩陣。

例子

fit <- survfit(Surv(time, status) ~ ph.ecog, data=lung)
quantile(fit)

cfit <- coxph(Surv(time, status) ~ age + strata(ph.ecog), data=lung)
csurv<- survfit(cfit, newdata=data.frame(age=c(40, 60, 80)),
                  conf.type ="none")
temp <- quantile(csurv, 1:5/10)
temp[2,3,]  # quantiles for second level of ph.ecog, age=80
quantile(csurv[2,3], 1:5/10)  # quantiles of a single curve, same result

作者

Terry Therneau

也可以看看

survfit , print.survfit , qsurvreg

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Quantiles from a survfit object。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。