Dos preguntas relacionadas de mi parte. Tengo un marco de datos que contiene números de pacientes en una columna (rango 10-17 pacientes) y 0s y 1s que muestran si ocurrió un incidente ese día. Estoy usando un modelo binomial para hacer retroceder la probabilidad de incidente en el número de pacientes. Sin embargo, me gustaría ajustar el hecho de que cuando haya más pacientes, inevitablemente habrá más incidentes porque la cantidad total de tiempo del paciente en la sala es mayor ese día.
Así que estoy usando un modelo binomial offset como este (código R):
glm(Incident~Numbers, offset=Numbers, family=binomial, data=threatdata)
Mis preguntas son:
¿Está bien tener exactamente las mismas variables prediciendo y en el desplazamiento? Quiero parcializar el aumento tónico en la probabilidad de incidentes y ver si queda algo, esencialmente. Tiene sentido para mí, pero soy un poco cauteloso en caso de estar equivocado.
¿Se ha especificado correctamente el desplazamiento? Sé que en los modelos de Poisson leería
offset=log(Numbers)
No sé si hay un equivalente aquí y parece que no puedo encontrar ninguna compensación binomial con Google (el principal problema es que sigo obteniendo binomio negativo que, por supuesto, no es bueno).
fuente
Respuestas:
Si está interesado en la probabilidad de un incidente dado N días de pacientes en la sala, entonces desea un modelo como:
el desplazamiento representa ensayos,
incident
es 0 o 1, y la probabilidad de un incidente es constante (sin heterogeneidad en la tendencia a generar incidentes) y los pacientes no interactúan para causar incidentes (sin contagio). Alternativamente, si la posibilidad de un incidente es pequeña, lo cual es para usted (o ha aumentado el número de incidentes sin mencionarlo), entonces puede preferir la formulación de Poissondonde se aplican los mismos supuestos. El desplazamiento se registra porque el número de pacientes en la sala tiene un efecto proporcional / multiplicativo.
Ampliando el segundo modelo, tal vez piense que hay más incidentes de los que se esperarían de otro modo simplemente debido al aumento en el número de pacientes. Es decir, quizás los pacientes interactúan o son heterogéneos. Entonces intentas
Si el coeficiente de encendido
log.patients.on.ward
es significativamente diferente de 1, donde se fijómod2
, entonces algo podría estar mal con sus suposiciones de no heterogeneidad ni contagio. Y aunque, por supuesto, no puede distinguir estas dos (ni una de las otras variables faltantes), ahora tiene una estimación de cuánto aumenta el número de pacientes en la sala aumenta la tasa / probabilidad de un incidente más allá de lo que esperar de la casualidad. En el espacio de parámetros es1-coef(mod3)[2]
con intervalo derivable deconfint
.Alternativamente, puede trabajar directamente con la cantidad de registro y su coeficiente. Si solo desea predecir la probabilidad de incidente utilizando el número de pacientes en la sala, entonces este modelo sería una forma simple de hacerlo.
Las preguntas
¿Está bien tener variables dependientes en su desplazamiento? Me parece una muy mala idea, pero no veo que tengas que hacerlo.
El desplazamiento en los modelos de regresión de Poisson
exposure
es de hecholog(exposure)
. Quizás, de manera confusa, el uso deoffset
los modelos de regresión binomial de R es básicamente una forma de indicar el número de ensayos. Siempre se puede reemplazar por una variable dependiente definida comocbind(incidents, patients.on.ward-incidents)
y sin desplazamiento. Piénselo de esta manera: en el modelo de Poisson ingresa en el lado derecho detrás de la función de enlace de registro, y en el modelo Binomial ingresa en el lado izquierdo en frente de la función de enlace de registro.fuente
Desplazamientos en regresiones de Poisson
Comencemos por ver por qué usamos un desplazamiento en una regresión de Poisson. A menudo queremos que esto se deba al control de la exposición. Sea la tasa de referencia por unidad de exposición y el tiempo de exposición en las mismas unidades. El número esperado de eventos será .λ t λ × t
En un modelo GLM estamos modelando el valor esperado usando una función de enlace , es decirsol
donde es la duración de la exposición para el individuo y es el valor covariable para el individuo . Los puntos suspensivos simplemente indican términos de regresión adicionales que podemos agregar.tyo yo Xyo yo
Podemos simplificar simplificando la expresión anterior
El es simplemente un "desplazamiento" agregado a la regresión de Poisson ya que no es un producto de ninguno de los parámetros del modelo que estaremos estimando.Iniciar sesión( tyo)
Regresión binomial
En una regresión binomial, que generalmente usa un enlace logit, es decir:
Puede ver que será difícil derivar un modelo para que produzca un desplazamiento constante.pagyo
Por ejemplo, si es la probabilidad de que uno cualquier paciente en días tiene un incidente. Será una función de los pacientes individuales disponibles en ese día. Como dijo jboman, es más fácil derivar el cumplido de no incidencia, en lugar de determinar directamente la probabilidad de al menos un incidente.pagyo yo
Sea la probabilidad de que un paciente tenga un incidente el día . La probabilidad de que ningún paciente tenga un incidente el día será , donde es el número de pacientes el día . Por el cumplido, la probabilidad de que al menos un paciente tenga un incidente será, j i i ∏ N i j = 1pag∗i ,j j yo yo ∏norteyoj= 1( 1 - p∗i ,j) norteyo yo
Si estamos dispuestos a asumir que la probabilidad de que un paciente tenga un incidente en cualquier día es la misma, podemos simplificar esto a donde y es la probabilidad de incidencia compartida.q ∗ = 1 - p ∗ p ∗
Si sustituimos esta nueva definición de en nuestra función de enlace logit , lo mejor que podemos hacer en términos de simplificación y reorganización es . Esto todavía no nos deja con un término constante que se pueda factorizar. g ( p i ) log ( ( q ∗ ) - N - 1 )pagyo sol( pyo) Iniciar sesión( ( q∗)- N- 1 )
Como resultado, no podemos usar un desplazamiento en este caso.
Lo mejor que puede hacer es discretizar el problema (como lo sugiere jboman), puede crear contenedores para el número de pacientes y estimar un valor separado para para cada uno de estos contenedores. De lo contrario, deberá derivar un modelo más complicado.pag
fuente
Esta respuesta viene en dos partes, la primera una respuesta directa a la pregunta y la segunda un comentario sobre el modelo que está proponiendo.
La primera parte se refiere al uso de
Numbers
como un desplazamiento junto con tenerlo en la derecha de la ecuación. El efecto de hacer esto será simplemente restar 1 del coeficiente estimado deNumbers
, invirtiendo así el efecto de la compensación, y de lo contrario no cambiará los resultados. El siguiente ejemplo, con algunas líneas de salida irrelevantes eliminadas, demuestra esto:Observe cómo todo es igual excepto el coeficiente de Números y la desviación nula (y el estadístico t, porque todavía se está probando contra 0 en lugar de -1).
También se podría sospechar que la probabilidad por paciente varía de paciente a paciente, lo que llevaría a un modelo jerárquico más complejo, pero no voy a entrar en eso aquí.
En cualquier caso, dado esto y el rango limitado del número de pacientes que observa, en lugar de utilizar un modelo lineal en la escala logit, podría ser mejor no ser paramétrico sobre la relación y agrupar el número de pacientes en tres o cuatro grupos, por ejemplo, 10-11, 12-13, 14-15 y 16-17, construyen variables ficticias para esos grupos, luego ejecutan la regresión logística con las variables ficticias en el lado derecho. Esto permitirá capturar mejor las relaciones no lineales, como "el sistema está sobrecargado alrededor de 16 pacientes y los incidentes comienzan a aumentar significativamente". Si tuviera una gama mucho más amplia de pacientes, sugeriría un modelo aditivo generalizado, por ejemplo, 'gam' del paquete 'mgcv'.
fuente
Parece más simple especificar un enlace de registro y mantener el desplazamiento como para un modelo de Poisson.
fuente