pyears
位於 survival
包(package)。 說明
此函數計算一組受試者貢獻的隨訪時間的person-years,並分層為子組。它還計算對輸出表的每個單元格做出貢獻的受試者數量,以及可選的每個單元格中的事件數和/或預期事件數。
用法
pyears(formula, data, weights, subset, na.action, rmap,
ratetable, scale=365.25, expect=c('event', 'pyears'),
model=FALSE, x=FALSE, y=FALSE, data.frame=FALSE)
參數
formula |
一個公式對象。響應變量將是每個受試者的隨訪時間向量,或包含生存時間和事件指示器的 |
data |
一個數據幀,用於解釋 |
weights |
箱重。 |
subset |
表達式表示在擬合中隻應使用數據行的子集。 |
na.action |
缺失數據過濾器函數,在使用任何 |
rmap |
將數據集名稱映射到費率表名稱的可選列表。請參閱下麵的詳細信息部分。 |
ratetable |
事件發生率表,例如 |
scale |
對結果進行縮放。由於大多數費率表以單位/天為單位,因此默認值 365.25 會導致以年為單位報告輸出。 |
expect |
輸出表是否應包含預期的事件數,或預期的person-years觀察數。這僅對費率表有效。 |
data.frame |
返回一個 DataFrame 而不是一組數組。 |
model , x , y |
如果其中任何一個為真,則模型框架、模型矩陣和/或響應時間向量將作為最終結果的組成部分返回。 |
細節
由於pyears
可能有多個時間變量,因此所有這些變量必須采用相同的單位。例如,在調用中
py <- pyears(futime ~ rx, rmap=list(age=age, sex=sex, year=entry.dt), ratetable=survexp.us)
費率表的自然單位是每天的危險,重要的是 futime
、 age
和 entry.dt
均以天為單位。考慮到可能的輸入範圍很廣,例程很難進行這方麵的健全性檢查。
正在使用的費率表可能具有與用戶數據集不同的變量名稱,這由 rmap
參數處理。上述計算的比率表是 survexp.us
,對 summary{survexp.us}
的調用顯示它期望變量 age
= 以天為單位的年齡, sex
和 year
= 研究條目的日期,我們創建它們在 rmap
行中。 sex 變量未映射,因此代碼假定它以正確的格式存在於 mydata
中。 (注意:對於性別等因子,程序將匹配任何唯一的縮寫,忽略大小寫。)
需要一個特殊函數tcut
來指定與時間相關的切點。例如,假設年齡以年為單位,並且所需的最終數組將年齡組 0-2、2-10、10-25 和 25+ 作為其邊距之一。 4 歲時進入研究並持續觀察 10 年的受試者將為 2-10 和 10-25 子集貢獻隨訪時間。如果公式中使用cut(age, c(0,2,10,25,100))
,則僅根據受試者的起始年齡進行分類。 tcut
函數具有與 cut
相同的參數,但生成不同的輸出對象,該對象允許 pyears
函數正確跟蹤主題。
pyears
的結果通常用作進一步計算的輸入。因此,print
例程旨在僅提供表的摘要。
值
包含組件的列表:
pyears |
包含person-years曝光的數組。 (或其他單位,取決於費率表和比例)。數組的維度和維度名稱對應於模型方程右側的變量。 |
n |
一個數組,其中包含為 |
event |
包含觀察到的事件數的數組。僅當響應變量是 |
expected |
包含預期事件數量的數組(如果 |
data |
如果設置了 |
offtable |
隊列中不屬於 |
tcut |
調用是否包含任何與時間相關的切點。 |
summary |
rate-table 匹配的摘要。這對於錯誤檢查也很有用。 |
call |
函數調用的圖像。 |
observations |
刪除任何缺失後輸入數據集中的觀測值數量。 |
na.action |
由 |
例子
# Look at progression rates jointly by calendar date and age
#
temp.yr <- tcut(mgus$dxyr, 55:92, labels=as.character(55:91))
temp.age <- tcut(mgus$age, 34:101, labels=as.character(34:100))
ptime <- ifelse(is.na(mgus$pctime), mgus$futime, mgus$pctime)
pstat <- ifelse(is.na(mgus$pctime), 0, 1)
pfit <- pyears(Surv(ptime/365.25, pstat) ~ temp.yr + temp.age + sex, mgus,
data.frame=TRUE)
# Turn the factor back into numerics for regression
tdata <- pfit$data
tdata$age <- as.numeric(as.character(tdata$temp.age))
tdata$year<- as.numeric(as.character(tdata$temp.yr))
fit1 <- glm(event ~ year + age+ sex +offset(log(pyears)),
data=tdata, family=poisson)
## Not run:
# fit a gam model
gfit.m <- gam(y ~ s(age) + s(year) + offset(log(time)),
family = poisson, data = tdata)
## End(Not run)
# Example #2 Create the hearta data frame:
hearta <- by(heart, heart$id,
function(x)x[x$stop == max(x$stop),])
hearta <- do.call("rbind", hearta)
# Produce pyears table of death rates on the surgical arm
# The first is by age at randomization, the second by current age
fit1 <- pyears(Surv(stop/365.25, event) ~ cut(age + 48, c(0,50,60,70,100)) +
surgery, data = hearta, scale = 1)
fit2 <- pyears(Surv(stop/365.25, event) ~ tcut(age + 48, c(0,50,60,70,100)) +
surgery, data = hearta, scale = 1)
fit1$event/fit1$pyears #death rates on the surgery and non-surg arm
fit2$event/fit2$pyears #death rates on the surgery and non-surg arm
也可以看看
相關用法
- R pseudo 生存的偽值。
- R pbc 梅奧診所原發性膽汁性膽管炎數據
- R plot.survfit survfit 對象的繪圖方法
- R print.aareg 打印 aareg 對象
- 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 pspline 使用 pspline 基礎平滑樣條線
- 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大神的英文原創作品 Person Years。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。