Як оцінити базову функцію небезпеки в моделі Кокса з R


13

Мені потрібно оцінити базову функцію небезпеки у залежності від часу моделі Коксаλ0(т)

λ(т)=λ0(т)досвід(Z(т)'β)

Поки я проходив курс виживання, я пам’ятаю, що пряма похідна від функції накопичувальної небезпеки ( ) не була б хорошим оцінником, оскільки Оцінювач Бреслоу дає ступінчасту функцію.λ0(т)гт=гΛ0(т)

Отже, чи є в R функція, яку я міг би використовувати безпосередньо? Або будь-яке посилання на цю тему?

Я не впевнений, чи варто відкрити ще одне запитання, тому я просто додаю кілька підстав, чому для мене важлива функція базової небезпеки. Формула нижче оцінює ймовірність того, що час виживання для одного суб'єкта більший, ніж іншого. У налаштуваннях моделі Кокса потрібна функція базової небезпеки . λ0(т)

П(Т1>Т2)=-0S1(т)гS2(т)=-0S1(т)S2(т)λ2(т)гт


2
Чи допомагає це? stats.stackexchange.com/questions/36015/…
ocram

Про оцінку Breslow
Stéphane Laurent

Формула (4) даної роботи дає оцінку. jstor.org/stable/2530904
elong

Відповіді:


20

Модель Кокса була чітко розроблена таким чином, щоб можна було оцінити коефіцієнти небезпеки без необхідності оцінювати базову функцію небезпеки. Це сила і слабкість. Сила полягає в тому, що ви не можете робити помилки у функціях, які ви не оцінюєте. Це справжня сила і є причиною, по якій люди називають це "напівпараметричним" і значною мірою відповідає за його популярність. Однак це також є справжньою слабкістю, оскільки, коли ви хочете знати щось інше, ніж коефіцієнт небезпеки, вам часто знадобиться функція базової небезпеки, яка перешкоджає самій цілі моделі Кокса.

Тому я, як правило, використовую моделі Кокса лише тоді, коли мене цікавлять співвідношення небезпек і нічого іншого. Якщо я хочу знати інші речі, я зазвичай переходжу до інших моделей, таких як обговорювані тут: http://www.stata.com/bookstore/f prilagod-parametric-survival-analysis- stata/


2
+1 Це ще один спосіб моделювання параметрично базових даних про небезпеку.princeton.edu/ wws509
notes/

3

Базова небезпечна функція може бути оцінена в R, використовуючи функцію "базовий". Файл "довідки" зазначає, що це функція "передбачуваного виживання", якої явно немає. Якщо людина перевіряє код, це чітко є функцією накопичення небезпеки від survfitоб'єкта. Для подальшої глупості налаштування за замовчуванням полягає centered=TRUEв тому, що а) не є базовою функцією небезпеки (як випливає з назви), і б) використовує засоби прогнозування, що дико дискредитується як дійсне в будь-якому практичному сенсі.

І до вашого попереднього моменту: так, ця функція використовує функцію кроку. Ви можете перетворити цей вихід у функцію небезпеки за допомогою згладжування. Найгірша частина всього цього, який інтервал невизначеності для цього прогнозу? Ви можете отримати медаль Поля, якщо зможете її отримати. Я не думаю, що ми навіть знаємо, чи працює завантажувальна машина чи ні.

Як приклад:

set.seed(1234)
x <- rweibull(1000, 2, 3)
coxfit <- coxph(Surv(x) ~ 1)
bhest <- basehaz(coxfit)
haz <- exp(diff(bhest[, 1])*diff(bhest[, 2]))
time <- (bhest[-1,2] + bhest[-1000, 2])/2
b <- 2^-3

curve(3*b*x, from=0, to=max(x), xlab='Survival time', ylab='Weibull hazard')
points(t <- bhest[-1,2], h <- diff(bhest[, 1])/diff(bhest[, 2]), col='grey')
smooth <- loess.smooth(t, h)
lines(smooth$x, smooth$y, col='red')
legend('topright', lty=c(1,1,0), col=c('black', 'red', 'grey'), pch=c(NA,NA,1), c('Actual hazard fun', 'Smoothed hazard fun', 'Stepped discrete-time hazards'), bg='white')

введіть тут опис зображення

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.