2015-04-13 4 views
0

Я провел следующую модель Cox и получил 1526679 удаленных наблюдений, что является большой частью моих данных.Понимание причины отсутствия в модели Cox

Call: coxph(formula = Surv(time1sec, time2sec, event) ~ gain + 
Buy + Lev + TP + frailty(ID), data) 

n= 73322, number of events= 73322 (1526679 observations deleted due to missingness) 

Я не уверен, почему эти наблюдения были удалены. Я уверен, что эти ценности существуют и не пусты. Это началось, когда я добавил идентификатор в качестве условия хрупкости.

Любые идеи, что может быть здесь?

+0

Попробуйте 'dim (data [complete.cases (data),])', чтобы увидеть, нет ли у вас отсутствующих значений. – zx8754

+1

Я сделал это, размеры 1600001 и 21, которые представляют собой количество строк и столбцов в моем кадре данных. – roland

ответ

0

В стандартных регрессиях типа регрессии (и регрессии, как в случае регрессии кокса) метод по умолчанию для обработки отсутствующих значений - это просто игнорировать их. Это происходит как для коэффициентов, так и для значений, которые вы пытаетесь предсказать.

Я бы начал с явной проверки, что все, что вы хотите, есть. Это можно сделать с помощью следующего кода:

apply(data, 2, function(x) length(which(is.na(x)))) 

Я хотел бы также проверить, что мой объект Surv не имеет какого-либо НС, со следующим кодом:

length(which(is.na(Surv(time1sec, time2sec, event)))) 
+0

op сделал это с помощью 'dim (data [complete.cases (data),])' в комментариях, предполагающих отсутствие отсутствующих данных вообще – rawr

+0

Got 0 NA. Эта проблема возникла, когда я добавил переменную xrailty (ID). Перед тем, как добавить этот термин, модель отлично работала. – roland

0

Кроме того, убедитесь, что ваш источник данных содержит только соответствующую информацию. Например, я импортировал свой файл данных в R, который включал много записей, которые не были полезны для анализа (, например, легенд, ключевых слов), и R, очевидно, исключает эти результаты, и они отображаются как «недостаток».

Смежные вопросы