у coxph закончились итерации - не сходятся, категориальная обработка, непрерывные ковариаты - PullRequest
0 голосов
/ 19 сентября 2018

Я пытаюсь запустить модель пропорционального риска Кокса, чтобы определить влияние обработки и ковариат на выживание отдельных видов растений.Ранее, когда я запускал coxph только с обработкой (категориальный / фактор)

simacox <- coxph(Surv(Time, Event, type = c('right')) ~ Treatment,  data = rsima)

Он работал нормально, но когда я добавлял в (непрерывные) ковариаты, я продолжал получать сообщение об ошибке:

simacox <- coxph(Surv(Time, Event, type = c('right')) ~ 
    Treatment+SLA+VLA+Thickness+Growth_Rate,  data = rsima)

Предупреждающее сообщение: В установщике (X, Y, strats, offset, init, control, weights = weights,: закончились итерации и не сходились

Вотнабор данных: я не совсем уверен, если это вызвано значениями NA или другой проблемой. Я рассматривал подобные проблемы, но они обычно возникают, потому что Treatment является непрерывным и, кажется, другая проблема.

Plot ID Subplot Treatment   Column  Row Species Time    Event   Growth_Rate Area    SLA VLA Thickness
PC1 1   control A   7   SIMA    535 1   0.0132  NA  NA  NA  NA
PC1 2   control C   2   SIMA    829 0   0.0532  6   123.5312982 1.307927088 0.1005
PC1 3   control D   2   SIMA    535 1   0.0329  NA  NA  NA  NA
PC2 1   control A   7   SIMA    829 0   0.0236  0.75    192.6132404 1.49602026  0.135
PC2 2   control C   2   SIMA    829 1   0.0037  NA  NA  NA  NA
PC2 3   control D   2   SIMA    535 1   0.0099  NA  NA  NA  NA
PC3 1   control A   7   SIMA    152 1   0.0163  NA  NA  NA  NA
PC3 2   control C   2   SIMA    829 0   0.058   1   185.3606789 1.311713087 0.135
PC3 3   control D   2   SIMA    829 0   0.0097  0.75    96.12967467 1.392643765 0.1735
PC4 1   control A   7   SIMA    152 1   0.0109  NA  NA  NA  NA
PC4 2   control C   2   SIMA    120 1   0.0109  NA  NA  NA  NA
PC4 3   control D   2   SIMA    120 1   0.0217  NA  NA  NA  NA
PC5 1   control A   7   SIMA    92  1   0   NA  NA  NA  NA
PC5 2   control C   2   SIMA    152 1   0.0109  NA  NA  NA  NA
PC5 3   control D   2   SIMA    829 1   0.0009  NA  NA  NA  NA
PS1 1   shelter A   7   SIMA    829 0   0.0121  3.25    96.12967467 1.392643765 0.1735
PS1 2   shelter C   2   SIMA    829 1   0.0009  NA  NA  NA  NA
PS1 3   shelter D   2   SIMA    829 0   0.0435  11.75   119.0672131 1.26393576  0.2495
PS2 1   shelter A   7   SIMA    829 0   0.0508  6   128.8442116 1.744927272 0.1417
PS2 2   shelter C   2   SIMA    829 0   0.0193  1   163.722709  1.987793669 0.1045
PS2 3   shelter D   2   SIMA    829 0   0.0484  6.5 134.4099228 1.589451631 0.18
PS3 1   shelter A   7   SIMA    829 0   0.0363  9.5 184.2795579 1.450538059 0.1035
PS3 2   shelter C   2   SIMA    829 0   0.058   11  96.76593176 1.501929992 0.08
PS3 3   shelter D   2   SIMA    829 0   0.0193  2.25    124.317571  3.516426012 0.1295
PS4 1   shelter A   7   SIMA    829 0   0.0411  4.5 113.088867  2.203327018 0.149
PS4 2   shelter C   2   SIMA    535 1   0.0263  NA  NA  NA  NA
PS4 3   shelter D   2   SIMA    829 0   0.058   11  31.44098888 1.714225616 0.1595
PS5 1   shelter A   7   SIMA    829 0   0.0363  11.5    155.3209302 1.308096836 0.23875
PS5 2   shelter C   2   SIMA    829 0   0.0048  0.25    171.0465116 2.135961931 0.104
PS5 3   shelter D   2   SIMA    829 0   0.0266  5   178.9407945 1.599492384 0.0975
PW1 1   watered A   7   SIMA    829 1   0.0056  NA  NA  NA  NA
PW1 2   watered C   2   SIMA    829 0   0.0484  6.5 150.7782165 1.956811087 0.159
PW1 3   watered D   2   SIMA    829 0   0.0181  3   158.1184404 1.94474398  0.1935
PW2 1   watered A   7   SIMA    829 0   0.0351  8.5 148.9020752 1.482003075 0.2405
PW2 2   watered C   2   SIMA    829 0   0.0508  1.5 170.3944295 1.653449107 0.127
PW2 3   watered D   2   SIMA    829 1   0.0009  NA  NA  NA  NA
PW3 1   watered A   7   SIMA    829 0   0.0073  1   159.8682043 1.594187964 0.224
PW3 2   watered C   2   SIMA    120 1   0.0217  NA  NA  NA  NA
PW3 3   watered D   2   SIMA    829 0   0.0919  25  146.6362786 1.694286556 0.1325
PW4 1   watered A   7   SIMA    120 1   0.0109  NA  NA  NA  NA
PW4 2   watered C   2   SIMA    829 1   0.0009  NA  NA  NA  NA
PW4 3   watered D   2   SIMA    152 1   0.0163  NA  NA  NA  NA
PW5 1   watered A   7   SIMA    829 1   0.0009  NA  NA  NA  NA
PW5 2   watered C   2   SIMA    535 1   0.0266  1.5 162.8057554 2.065105317 0.94
PW5 3   watered D   2   SIMA    829 0   0.058   4   80.37696758 1.831219479 0.1195

1 Ответ

0 голосов
/ 19 сентября 2018

Проблема

Проблема на самом деле с Thickness;Легко проверить, что

fit <- coxph(Surv(Time, Event) ~ Thickness, data = rsima)

выдает предупреждение

Предупреждающее сообщение: В установщике (X, Y, strats, offset, init, control, weights = weights,: Ranиз итераций и не сходятся

Мы можем получить представление о проблемах сходимости из ?coxph:

В некоторых случаях данных фактическая оценка коэффициента MLE равнабесконечность, например, дихотомическая переменная, в которой в одной из групп нет событий. Когда это происходит, соответствующий коэффициент растет с постоянной скоростью, и в подходящей процедуре будет существовать условие расы: либо логарифмическая вероятность сходится, информационная матрица становится фактически единственной, аргумент exp становится слишком большим для аппаратного обеспечения компьютера или превышено максимальное количество взаимодействий. (Почти всегда происходит первое.) Процедура пытается определить, когда это произошло, не всегда успешно. Основное последствие для пользователяявляется то, что статистика Вальда = коэффициент / SE (коэффициент) не является Valid в этом случае и должен игнорироваться;однако соотношение правдоподобия и оценки остаются действительными.

Объяснение

Если мы посмотрим на rsima$Thickness, то заметим, что большинство значений невелики (в диапазоне 0.08 <= Thickness <= 0.2495).) с одним единственным значением, равным Thickness = 0.94.Это очень похоже на случай, описанный в документации, где Thickness - это в основном дискретная переменная (с уровнями «низкий» и «высокий») и одна группа почти не имеет событий («высокая» группа имеет только одно событие).

Исходя из этого поста о перекрестной проверке , полезно визуализировать эффект путем построения графика

library(survminer)
ggsurvplot(survfit(Surv(Time, Event) ~ (Thickness > median(Thickness, na.rm = T)), data = df), data = df)

enter image description here

То, что мы здесь делаем, - это построение графика вероятности выживания как функции от дихотомического Thickness, где Thickness либо меньше его медианного значения (красная кривая), либо больше (синяя кривая).

Вы можете увидеть влияние Thickness на вероятность выживания, или, скорее, отсутствие эффекта Thickness.Например, обратите внимание, что для малых значений Thickness нет случаев Event = 1, а для больших значений Thickness есть только один случай Event = 1.

С точки зрения подгонки модели этоневозможно получить надежную оценку влияния Thickness на вероятность выживания, и Thickness следует удалить из модели до исследования дополнительных непрерывных / дискретных ковариат.

...