Оценка скорректированных коэффициентов риска в двоичных данных с использованием регрессии Пуассона


9

Я заинтересован в оценке скорректированного коэффициента риска, аналогичного тому, как оценивается скорректированный коэффициент шансов с использованием логистической регрессии. Некоторая литература (например, это ) указывает на то, что использование регрессии Пуассона со стандартными ошибками Губер-Уайта является основанным на модели способом сделать это

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

arr <- function(BLR,RR,p,n,nr,ce)
{
   B = rep(0,nr)
   for(i in 1:nr){
   b <- runif(n)<p 
   x <- rnorm(n)
   pr <- exp( log(BLR) + log(RR)*b + ce*x)
   y <- runif(n)<pr
   model <- glm(y ~ b + x, family=poisson)
   B[i] <- coef(model)[2]
   }
   return( mean( exp(B), na.rm=TRUE )  )
}

set.seed(1234)
arr(.3, 2, .5, 200, 100, 0)
[1] 1.992103
arr(.3, 2, .5, 200, 100, .1)
[1] 1.980366
arr(.3, 2, .5, 200, 100, 1)
[1] 1.566326 

В этом случае истинный коэффициент риска равен 2, который надежно восстанавливается, когда ковариатный эффект невелик. Но когда ковариатный эффект велик, это искажается. Я предполагаю, что это происходит потому, что ковариатный эффект может подтолкнуть верхнюю границу (1), и это загрязняет оценку.

Я посмотрел, но не нашел никакой литературы по корректировке для непрерывных ковариат в оценке скорректированного отношения риска. Мне известны следующие сообщения на этом сайте:

но они не отвечают на мой вопрос. Есть ли какие-либо документы по этому поводу? Есть ли какие-либо известные предостережения, которые следует соблюдать?


1
Может быть интересным для вас: aje.oxfordjournals.org/content/162/3/199.full
StatsStudent

Также могут помочь эти вопросы и ответы stats.stackexchange.com/questions/18595/…
mdewey

Ответы:


1

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

model <- glm(y ~ b + x, family=binomial(logit)

а не как ваша модель регрессии Пуассона, получается тот же результат: предполагаемое ИЛИ составляет ~ 1,5 при приближении к 1. Итак, я не уверен, что ваш пример предоставляет информацию о возможной проблеме с использованием регрессии Пуассона для бинарных результатов.


1
Проблема с подгонкой логит-модели, хотя она не приводит к прогнозируемым рискам, превышающим 1, заключается в том, что отношение шансов является искаженной оценкой отношения риска и что смещение резко возрастает по мере того, как результат становится более распространенным. Вы можете указать binomial(link=log)фактическую модель относительного риска, но она редко сходится из-за непредсказуемого результата.
AdamO

1

Я считаю, что использование прямого максимального правдоподобия с надлежащей функцией вероятности значительно улучшает оценку относительного риска. Вы можете напрямую указать усеченную функцию риска в качестве прогнозируемой скорости процесса.

введите описание изображения здесь

Обычно мы используем гессиан для создания КИ для оценки. Я не исследовал возможность использования этого в качестве матрицы «B» (мясо) в ошибке Хубера Уайта и использования установленных рисков для получения матрицы «A» (хлеб) ... но я подозреваю, что это может сработать! Более вероятно, что вы можете использовать начальную загрузку для получения ошибок модели, которые устойчивы к неверно заданному отношению средней дисперсии.

## the negative log likelihood for truncated risk function
negLogLik <- function(best, X, y) { 
  pest <- pmin(1, exp(X %*% best))
  -sum(dpois(x = y, lambda = pest, log=TRUE))
}

set.seed(100)

sim <- replicate(100, {
  n <- 200
  X <- cbind(1, 'b'=rbinom(n, 1, 0.5), 'x'=rnorm(n))
  btrue <- c(log(0.3), log(2), 1)
  ptrue <- pmin(1, exp(X %*% matrix(btrue)))
  y <- rbinom(n, 1, ptrue) ## or just take y=ptrue for immediate results
  nlm(f = logLik, p = c(log(mean(y)),0,0), X=X, y=y)$estimate
})

rowMeans(exp(sim))

дает:

> rowMeans(exp(sim))
[1] 0.3002813 2.0680780 3.0888280

Средний коэффициент дает вам то, что вы хотите.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.