#r
#r
Вопрос:
Я столкнулся с проблемой при попытке выполнить интервальную регрессию с использованием пакета выживания. Целью было просто оценить константу, используя данные с интервальной цензурой.
> library(survival)
> y = with(data, Surv(lb, ub, type = "interval2"))
> model_y = survreg(y ~ 1, dist = "gaussian")
> model_y
Call:
survreg(formula = y ~ 1, dist = "gaussian")
Coefficients: (1 not defined because of singularities)
(Intercept)
NA
Scale= 256178.4
Loglik(model)= -6186.5 Loglik(intercept only)= -6186.5
n=2556 (132 observations deleted due to missingness)
Для перехвата сообщается о NA. Кроме того, отображается замечание «(1 не определено из-за особенностей)».
Однако, как только я уменьшаю границы интервалов на постоянный коэффициент, получаются правильные результаты (работает для целых чисел > 3):
> library(survival)
> y = with(data, Surv(lb/4, ub/4, type = "interval2"))
> model_y = survreg(y ~ 1, dist = "gaussian")
> model_y
Call:
survreg(formula = y ~ 1, dist = "gaussian")
Coefficients:
(Intercept)
567.184
Scale= 64000.89
Loglik(model)= -6186 Loglik(intercept only)= -6186
n=2556 (132 observations deleted due to missingness)
У кого-нибудь есть идеи о том, почему это так?
С уважением
Комментарии:
1. Я мог бы задаться вопросом, может ли попытка использовать гауссовскую модель столкнуться с проблемами, когда алгоритм пытается установить среднее значение и стандартное отклонение 1.
2. Я не уверен, понимаю ли я вашу озабоченность здесь. То, что я пытаюсь сделать, это оценить перехват без каких-либо других коэффициентов.
3. Я не уверен, что вы понимаете, что означает термин «перехват» в контексте анализа выживания. Без примерного набора данных для работы и обсуждения, похоже, на ваш запрос «ответа» нет желающих.
4. если бы вы прочитали op, вы бы заметили, что данные были прикреплены с самого начала. уже из вашего первого ответа для меня должно было быть очевидно, что вы ничего не поняли из op. тем не менее, проблема уже решена в любом случае. пока
5. Если у вас есть решение, то правила SO поощряют вас опубликовать его, а затем через подходящий интервал поставить себе галочку для ответа. Дело в том, что
data
отсутствует или отсутствует то, что если у вас нет кода, который создает объект с таким именем (которого я, конечно, не вижу), то запуск кода сdata
в качестве первого аргумента найдет функцию с именемdata
и просто выдаст ошибку.