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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。