2015-01-16 2 views
1

Я запускаю модель coxph с помощью glmnet. Ниже приведен код, который я использую:R: glmnet - ошибка cox

data <- read.csv("CSM Tiers by Org.csv", stringsAsFactors = FALSE, na.strings = "?") 
x <- model.matrix(~ data$CSM + data$Exclude + data$Queue) 
y <- data$Time 
status <- data$Event 
glmnet(x,Surv(y,status), family = "cox") 

Однако, я получаю следующее сообщение об ошибке:

Error in coxnet(x, is.sparse, ix, jx, y, weights, offset, alpha, nobs, : 
negative event times encountered; not permitted for Cox family 

Но я не вижу никаких отрицательных моментов времени событий в моих данных.

> sum(y<0) 
[1] 0 

Любая помощь очень ценится!

+0

Без выполненных данных, чтобы сделать эту ошибку [воспроизводимую] (http://stackoverflow.com/questions/5963269/how-to- make-a-great-r-воспроизводимый пример), вам будет очень сложно помочь. – MrFlick

+0

@MrFlick: Я пытаюсь загрузить данные ... но это слишком большой файл. – EsBee

+0

Нам не нужен ваш точный входной файл. См. Советы по ссылке, предоставленной для создания репрезентативного набора входных данных. Этого должно быть достаточно, чтобы вызвать ту же самую ошибку, которую вы получаете. – MrFlick

ответ

1

Проверьте, если сумма (y < = 0). Код в функции говорит, что он вернет эту ошибку, если y равно 0.

код здесь, ошибка вы ссылаетесь, в строке 5: https://github.com/jeffwong/glmnet/blob/master/R/coxnet.R

+1

Спасибо @Branden Murray! Я обнаружил, что набор данных действительно имел некоторые 0. Модель запускалась при удалении 0 – EsBee

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