Прогнозування в регресії Кокса


38

Я роблю багатоваріантну регресію Кокса, у мене є значні незалежні змінні та бета-значення. Модель дуже добре підходить до моїх даних.

Тепер я хотів би використати свою модель і передбачити виживання нового спостереження. Мені незрозуміло, як це зробити з моделлю Кокса. У лінійній чи логістичній регресії було б просто, просто покладіть значення регресу в регресію і помножте їх на бета-версії, і тому я маю передбачення свого результату.

Як я можу визначити свою базову небезпеку? Мені це потрібно додатково для обчислення прогнозу.

Як це робиться в моделі Кокса?

Відповіді:


30

Дотримуючись модель Кокси, передбачувана небезпека для індивідуального з коваріатівних вектором х я маю вигляд ч я ( т ) = ч 0 ( т ) ехр ( х ' я β ) , де β визначається шляхом максимізації ймовірності часткової , в той час як ч 0 випливає з оцінки Нельсона-Aalen, ч 0 ( т я ) = d яixi

h^i(t)=h^0(t)exp⁡(xi′β^),
β^h^0 зт1,т2,...різні моменти часу іdячисло смертей втя (дивись, наприклад,розділ 3.6).
h^0(ti)=di∑j:tj≥tiexp⁡(xj′β^)
t1t2,…diti

S^i(t)=S^0(t)exp⁡(xi′β^)
S^0(t)=exp⁡(−Λ^0(t))
Λ^0(t)=∑j:tj≤th^0(tj).

EDIT: Це також може зацікавити :-)


1
Це саме моє запитання ... Мені потрібна оцінка базової функції небезпеки, щоб мати можливість прогнозувати, правильно? Чи знаєте ви якийсь метод його оцінки?
— Мар’я

2
@Marjan the jackknife може неправильно відображати невизначеність, викликану змінним вибором. Завантажувальна програма належним чином показує більшу мінливість, у якій змінні позначаються "значущими". Якщо ви хочете зробити "відносну валідацію", ви можете показати, що передбачувальна дискримінація є доброю після виправлення надмірної перевірки. Це не вимагає боротьби з базовою небезпекою, але перевіряє відносні оцінки небезпеки журналу. validateФункція в R rmsпакет в поєднанні з cphфункцією буде робити. Єдиний поетапний алгоритм, реалізований у, validate- це відступ назад.
— Френк Харрелл

1
Отримати прогнозовані відносні небезпеки (тобто лінійний предиктор) досить просто. Але я кинув користуватися SAS в 1991 році.
— Френк Харрелл

8
Посилання загинула :-(.
— gung - Відновити Моніку

2
Чи є спосіб передбачити Час виживання T для конкретної людини? Я маю на увазі, що з урахуванням переліку значень для коваріатів, який спосіб з’ясувати час, через який індивід, швидше за все, помре?
— statBeginner

14

Функція predictSurvProbв pecпакеті може дати вам абсолютні оцінки ризику для нових даних на основі існуючої моделі Кокса, якщо ви використовуєте R.

Математичні подробиці я не можу пояснити.

EDIT: Функція забезпечує ймовірність виживання, яку я досі сприймав як 1- (Імовірність події).

EDIT 2:

Можна обійтися без пакету pec. Використовуючи лише пакет виживання, наступна функція повертає абсолютний ризик на основі моделі Кокса

risk = function(model, newdata, time) {
  as.numeric(1-summary(survfit(model, newdata = newdata, se.fit = F, conf.int = F), times = time)$surv)
}

1-ймовірність виживання є сукупною небезпекою. Я думаю, що ОП вимагає функції миттєвої небезпеки (базової лінії) або якоїсь згладженої оцінки її ( muhazпакети в R).
— ECII

1
1-ймовірність виживання не є сукупною небезпекою. За відсутності конкуруючих ризиків, вони з'єднуються як детально на en.wikipedia.org/wiki/… .
— miura

1-ймовірність виживання = коефіцієнт відмови (якщо припустити лише 1x метод відмови). Співвідношення ймовірності виживання та накопичувальної небезпеки окреслено у прийнятій відповіді: S(t)=exp(−Λ(t))де Λ(t)накопичувальна небезпека.
— NickBraunagel

11

Можливо, ви також хотіли б спробувати щось подібне? Встановіть модель пропорційної небезпеки Кокса та використовуйте її, щоб отримати прогнозовану криву виживання для нового випадку.

Витягнуто з довідкового файлу для survfit.coxph у R (я щойно додав рядки)

# fit a Cox proportional hazards model and plot the  
# predicted survival for a 60 year old 
fit <- coxph(Surv(futime, fustat) ~ age, data=ovarian) 
plot(survfit(fit, newdata=data.frame(age=60)),
     xscale=365.25, xlab="Years", ylab="Survival", conf.int=F) 
# also plot the predicted survival for a 70 year old
lines(survfit(fit, newdata=data.frame(age=70)),
     xscale=365.25, xlab="Years", ylab="Survival") 

Ви повинні пам’ятати, що, якщо припущення про пропорційну небезпеку як і раніше зберігається для вашого прогнозу, пацієнт, для якого ви прогнозуєте, повинен бути з групи, яка якісно така, як та, яка використовується для отримання пропорційної моделі Кокса, пропорційної небезпеки, яку ви використовували для передбачення


6

basehazФункція survivalпакетів забезпечує базовий ризик в моменти часу подій. З цього ви можете пропрацювати математику, яку забезпечує окрам, і включити АБО ваших кокс-оцінок.


2

Вся суть моделі Кокса - пропорційне припущення про небезпеку та використання часткової ймовірності. Часткова ймовірність усуває функцію базової небезпеки. Тож вам не потрібно вказувати. Ось у цьому краса!


2
Якщо ви хочете отримати оцінку небезпеки або виживання для певного значення коваріатного вектора, тоді вам знадобиться оцінка базової небезпеки або виживання. Оцінка Нельсона-Аалена зазвичай робить роботу ...
— ocram

1
Часто з моделлю Кокса ви порівнюєте дві функції виживання, ключовим є коефіцієнт небезпеки, а не функція небезпеки. Базова небезпека - це параметр неприємності, який Кокс настільки хитро усунув із проблеми, використовуючи пропорційне припущення про небезпеку. Який би метод ви не хотіли використовувати для оцінки функції небезпеки та / або базової небезпеки в контексті моделі, зажадає використання форми моделі Кокса, яка зумовлює пропорційність.
— Майкл Р. Черник

Дякую вам велике, було б чудово, якби ви побачили мій коментар на відповідь ocram. Може, ти міг би мені також допомогти?
— Мар’я

3
Ви також можете розшаруватися на фактори, які не є пропорційними небезпеками. Але в будь-якому випадку модель Кокса та його оцінювач базової небезпеки може бути використана для отримання прогнозованих квантів часу виживання, різних ймовірностей виживання та прогнозованого середнього часу виживання, якщо у вас буде тривале спостереження. Всі ці величини легко отримати в пакеті R rms.
— Френк Харрелл

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