Un modelo de regresión cuya variable de respuesta es el día del año en que ocurre un evento anual (generalmente)

13

En este caso particular, me refiero al día en que se congela un lago. Esta fecha de "hielo" solo ocurre una vez al año, pero a veces no ocurre en absoluto (si el invierno es cálido). Entonces, en un año, el lago puede congelarse el día 20 (20 de enero), y otro año podría no congelarse en absoluto.

El objetivo es descubrir los conductores de la fecha de hielo.

Los predictores serían cosas como la temperatura del aire en otoño / invierno cada año. El año podría ser un predictor de la tendencia lineal a largo plazo.

1) ¿Es el entero "día del año" una variable de respuesta razonable (si no, qué es?)

2) ¿Cómo se deben manejar los años en que el lago nunca se congeló?

Editar:

No sé cuál es la etiqueta aquí, pero pensé que publicaría el resultado de las sugerencias que recibí. Aquí está el papel, acceso abierto . Recibí buenos comentarios sobre el enfoque utilizado, gracias @pedrofigueira y @cboettig. Por supuesto, los errores son míos.

rbatt
fuente
¿Qué tipo de conjunto de datos tienes? ¿Medidas durante todos los días del año?
Donbeo
@Donbeo, el hielo ocurre una vez al año, por lo que la variable de respuesta tiene una resolución anual. Los otros datos también aparecen con una frecuencia anual, pero en algunos casos podrían convertirse a datos de mayor frecuencia.
rbatt
¿Para qué propósito desea considerar la fecha de inicio? Pregunto esto porque el modelado estadístico nunca es verdadero o falso, sino útil o inútil. Por lo tanto, el uso de los resultados estadísticos es importante, también la idea de si la variable objetivo es de alguna utilidad. Por ejemplo, ¿qué pasa si el lago se congela con un delgado escudo de hielo ya en octubre pero se derrite la misma semana y nunca se congela nuevamente este invierno? ¿Tal vez haces tu análisis para predecir cuándo comenzar a usar algo como neumáticos para nieve? Esto podría dar una pista a una respuesta útil a su segunda pregunta.
Horst Grünbusch 01 de
Gracias por tus pensamientos, @ HorstGrünbusch. Quiero saber cómo las variaciones en el clima han afectado el hielo, porque poner una tapa en un sistema acuático afecta muchas cosas (intercambio de gases, luz, etc.). Los únicos datos de hielo disponibles son estas fechas de hielo (no el grosor, etc.).
rbatt

Respuestas:

4

Creo que uno puede considerar el "día del año" como una variable de respuesta a una regresión multivariada. Para manejar los años en que el lago nunca se congeló, simplemente consideraría que el día de congelación es mayor que un límite inferior observable que corresponde, por ejemplo, al día en que el contenido de hielo comienza a derretirse (o se derrite por completo, si lo desea). ser muy conservador) Teóricamente debería congelarse después de eso, o puede congelarse después de eso, pero no lo sabemos. De esta manera, podría utilizar los datos que recopiló en los diferentes parámetros para comprender cómo el día de congelación depende de ellos, si se permite que sea posterior a la última fecha observable. Luego puede usar un modelo Tobitpara manejar simultáneamente días de congelación (correspondientes a puntos de datos "normales") y límites inferiores (correspondientes a límites y, por lo tanto, una regresión censurada).

Para incluir correctamente los límites inferiores medidos en el análisis, puede usar un modelo de regresión censurado en el que la variable dependiente tiene un límite en el valor del límite inferior. El modelo Tobit mencionado anteriormente es apropiado para este caso; supone la existencia de una variable dependiente no observable (latente) que en nuestro caso corresponde a la fecha de congelación si el invierno se prolonga indefinidamente. La variable dependiente observable (es decir, el límite inferior medido en la fecha de congelación) se considera igual a la variable latente en ausencia de un límite inferior , y de otro modo igual al límite inferioryiyiLi

yi={yiif¯Li(i.e.yi<Li)LiifyiLi

La aplicación del modelo Tobit para manejar la censura de observación por observación da como resultado una función de verosimilitud de la forma

L=iyi<Liln[ϕ(yiXijβjσ)/σ]+iyiLiln[Φ(LiXijβjσ)]

ϕ(.)Φ(.)ijβj

pedrofigueira
fuente
3
1365011365
1
Yo diría que el concepto de límite inferior conserva su significado si cada año se puede considerar como un experimento independiente, es decir, si el experimento no tiene memoria y se puede suponer que la fecha de congelación en un año es completamente independiente de la fecha en el anterior; entonces debería depender solo de los parámetros del año en cuestión. Si ese es el caso, entonces, a mi entender, la variable no es circular.
pedrofigueira
1
Sí, en algunas circunstancias, tales técnicas ad hoc pueden funcionar. Cuando (a) el evento siempre ocurre cada año y (b) los eventos están muy dispersos alrededor de una fecha predecible, estará bien eligiendo el origen del año de manera apropiada. Pero con mayores cantidades de dispersión (que probablemente sea el caso aquí), o en los casos más drásticos cuando el evento puede estar ausente por completo, realmente necesita aplicar los métodos de estadísticas circulares ("direccionales"). Por cierto, la correlación en serie o la independencia es una preocupación completamente diferente.
whuber
2
Creo que el límite superior debería ser el año definido con la mayor precisión posible; si uno puede hacerlo, el análisis de Tobit se vuelve más perspicaz. Sugeriría como límite inferior (la congelación podría ocurrir antes, pero no fue observada / observable) el DoY más allá del cual considera que ya no puede detectar la fusión. Tal vez esto se pueda hacer observando el (P, T) requerido para que el agua se congele, y asumiendo una presión constante, elija los últimos mínimos locales del año o similares. Creo que la pregunta en este punto se convierte más en una pregunta física que estadística (pero muy interesante, de todos modos).
pedrofigueira
2
@rbatt Creo que esta respuesta es sensata. La fecha de inicio es arbitraria, puede comenzar desde otra fecha o usar números negativos; No veo un problema La circularidad se cuida sola numerando por día del año.
cboettig
1

El día del año es una variable predictiva sensata, y para eso creo que es sensato tratarla como sugiere @pedrofigueira.

Para otras variables predictoras, es posible que tenga que tener cuidado con cómo representa el tiempo. Por ejemplo, imagine que tiene temperaturas del aire por día: ¿cómo modelaría la temperatura del aire como un predictor del día de hielo? No creo que sea suficiente comparar las mismas muestras del día del año.

En cualquier análisis de este tipo, creo que es útil escribir lo que usted cree que podría ser un modelo generador (o modelos) plausible de los datos (donde algunas físicas podrían estar disponibles como guía). Por ejemplo, un modelo razonable podría ser integrar el número de días por debajo del punto de congelación, y cuando esa integral pasa un umbral (por ejemplo, relacionado con la masa térmica del lago), se produce hielo. A partir de dicho modelo, puede preguntar qué es una aproximación razonable y qué no.

Por ejemplo, el día del año como predictor es importante para ese modelo solo en la medida en que el día del año sea un buen predictor de temperatura. Por lo tanto, conociendo solo el día del año, uno solo tendría un día promedio del año correspondiente al umbral de hielo, con tal vez una distribución normal al respecto resultante de las variaciones de temperatura interanuales y, por lo tanto, buscando una tendencia en el día. de año está completamente justificado.

Pero si conoce otras variables como la temperatura del aire por día, probablemente se enfrente a lidiar con un modelo algo más complicado de manera más directa. Si solo está utilizando los valores anuales (¿mínimos? ¿Medias?), La variable como predictor del día de hielo también parece razonable (por el mismo argumento que el anterior).

cboettig
fuente
+1 por apuntar a la física. Si no puede explicar el resultado estadístico por la razón, puede ser espurio, incluso si fue significativo.
Horst Grünbusch
Para ser claros, el día del año para ice-on es la variable de respuesta ... es lo que estoy tratando de "predecir" (en su respuesta se refiere a él como el "predictor" en algunos lugares). ¿Tiene alguna sugerencia para manejar los años sin congelamiento (otra sugerencia de Tobit a continuación)?
rbatt
1
@rbatt, perdón por la confusión. El modelo más simple es 1D, usando el día del año que ocurrió en el pasado como el predictor. Pero si desea detectar tendencias en la fecha de inicio, tiene la FECHA completa, no el Día del año, como lo que desea predecir, porque la predicción para, por ejemplo, 2020 podría diferir de la de 2050.
cboettig
0

Para este problema necesita dos variables de respuesta. Una respuesta booleana que indica si el lago se congeló o no, y una respuesta entera que da el día del año, condicional a que el indicador sea verdadero. En los años en que el lago se congeló, se observan tanto el booleano como el entero. En los años en que el lago no se congeló, se observa el booleano y el entero no. Puede usar una regresión logística para el booleano. La regresión para el día del año podría ser una regresión lineal ordinaria.

La naturaleza circular del día del año no debería ser un problema siempre que enumere los posibles días de congelación consecutivos dentro de un período de tiempo determinado. Si se pregunta dónde comenzar la numeración, sugeriría el día en que se midieron los predictores. Si desea que el modelo represente efectos causales, debe darse el caso de que todos los predictores se midieron antes de cualquier posible congelamiento.

Para manejar la naturaleza entera y acotada del día del año, podría usar un modelo de discretización. Es decir, hay un valor latente real que genera una observación de la siguiente manera: si el valor está dentro de los límites, entonces la observación es igual al valor latente redondeado al entero más cercano; de lo contrario, el valor se trunca a los límites. El valor latente en sí mismo puede ser modelado como una función lineal de los predictores más el ruido.

Tom Minka
fuente
Entiendo la premisa del enfoque, pero no estoy seguro de cómo implementarlo. ¿Cómo organizaría los datos y estimaría la influencia de los conductores candidatos de la fecha booleana? Trabajo en R.
rbatt
Ponga los datos en un marco de datos donde una columna es booleana y otra es la fecha. Luego use: fit1 = glm (congelado ~ x, frame, family = "binomial") fit2 = lm (date ~ x, frame)
Tom Minka
Lo siento, ¿puedo entender "fit2 = lm (date ~ x, frame, subset = Boolean == TRUE)"?
Sergio
Esos serían dos modelos separados. En el modelo donde "fecha" es la respuesta, ¿qué hago con los años en que el agua nunca se congeló? Si simplemente elimino esos años, entonces estoy sesgando los resultados (o reduciendo severamente mi rango de respuestas observadas) porque estoy eliminando selectivamente las observaciones más extremas de la respuesta (es decir, nunca congelar es la fecha de congelación más extrema). Entonces, los años en que el agua nunca se congela deberían decirnos algo sobre la influencia de esos conductores en la fecha de hielo. Parece que la información en ambos modelos debe combinarse.
rbatt
Me incomoda tratar el congelamiento como una variable booleana porque el proceso subyacente es sin duda más continuo que eso.
cboettig
0

Lo que tiene son datos de tiempo hasta el evento, que también se denomina análisis de supervivencia. Esa no es realmente mi área, así que no estoy dando una respuesta detallada aquí. ¡Buscar en Google "datos de tiempo hasta el evento" o "análisis de supervivencia" te dará muchos éxitos!

Un buen punto de partida podría ser el capítulo (13) sobre análisis de supervivencia en Venables / Ripley: MASS, o el clásico "Análisis estadístico de datos de tiempo de falla, segunda edición" de John D. Kalbfleisch, Ross L. Prentice (auth.)

EDITAR, RESPUESTA EXTENDIDA

Como alternativa al análisis de supervivencia, puede aproximarse a eso mediante regresión logística ordinal. Por ejemplo, en su caso de ejemplo de la primera fecha de congelación, defina algunas fechas para las cuales usted asigna el estado "ha estado congelando en o antes", 0 (sin congelación), 1 (congelación). Que se adapta bien a los años sin congelación, simplemente tiene un vector de respuesta todo cero. Si las fechas elegidas son, digamos,

1:08   15:08 1:09 15:09 1:10 15:10 1:11 15:11 1:12  15:12  1:01  15:01
and the actual date of first freezing was  17:11, then your observed vector will be
0       0    0    0     0    0     0    0      1     1     1      1

y, en general, todos los vectores de respuesta tendrán un bloque inicial de ceros, seguido de un bloque de unos. Luego, puede usar esto con regresión logística ordinal, obteniendo una probabilidad estimada de congelación para cada fecha. El trazado de esa curva dará una aproximación para una curva de supervivencia (la supervivencia, en este contexto, se convierte en "no haberse congelado todavía").

EDIT

También se podrían ver sus datos como eventos recurrentes, ya que el río se congela (casi) todos los años. Vea mi respuesta aquí: Encontrar predictores significativos de reingresos psiquiátricos

kjetil b halvorsen
fuente