Cómo analizar la tendencia en series temporales no periódicas

12

Supongamos que tengo las siguientes series temporales no periódicas. Obviamente, la tendencia está disminuyendo y me gustaría probarlo con alguna prueba (con valor p ). No puedo usar la regresión lineal clásica debido a una fuerte autocorrelación temporal (en serie) entre los valores.

library(forecast)
my.ts <- ts(c(10,11,11.5,10,10.1,9,11,10,8,9,9,
               6,5,5,4,3,3,2,1,2,4,4,2,1,1,0.5,1),
            start = 1, end = 27,frequency = 1)
plot(my.ts, col = "black", type = "p",
     pch = 20, cex = 1.2, ylim = c(0,13))
# line of moving averages 
lines(ma(my.ts,3),col="red", lty = 2, lwd = 2)

ingrese la descripción de la imagen aquí

¿Cuáles son mis opciones?

Ladislav Naďo
fuente
44
Creo que el hecho de que la serie no sea periódica ( frequency=1) es poco relevante aquí. Un problema más relevante podría ser si está dispuesto a especificar una forma funcional para su modelo.
Richard Hardy
1
Probablemente, alguna información más sobre los datos probablemente sea útil para modelar.
bdeonovic
Los datos son recuentos de individuos (en miles) de ciertas especies contadas cada año en reservorios de agua.
Ladislav Naďo
1
@LadislavNado ¿es su serie tan corta como en el ejemplo proporcionado? Pregunto porque si es así, reduce la cantidad de métodos que pueden emplearse debido al tamaño de la muestra.
Tim
1
La obviedad del aspecto decreciente depende bastante de la escala, lo que, para mí, debería tenerse en cuenta
Laurent Duval

Respuestas:

7

Como dijiste, la tendencia en tus datos de ejemplo es obvia. Si desea justificar este hecho mediante una prueba de hipótesis, además de usar la regresión lineal (la opción paramétrica obvia), puede usar la prueba no paramétrica de Mann-Kendall para la tendencia monotónica. La prueba se usa para

evalúe si existe una tendencia monotónica hacia arriba o hacia abajo de la variable de interés a lo largo del tiempo. Una tendencia monotónica hacia arriba (hacia abajo) significa que la variable aumenta constantemente (disminuye) a lo largo del tiempo, pero la tendencia puede o no ser lineal. ( http://vsp.pnnl.gov/help/Vsample/Design_Trend_Mann_Kendall.htm )

Además, como señaló Gilbert (1987), la prueba

es particularmente útil ya que los valores faltantes están permitidos y los datos no necesitan ajustarse a ninguna distribución en particular

xjxin(n1)/2

S=i=1n1j=i+1nsgn(xjxi)

sgn()S τ1+1τ

τ=Sn(n1)/2

pn10pSS

var(S)=118[n(n1)(2n+5)p=1gtp(tp1)(2tp+5)]

ZMK

ZMK={S1var(S)if S>00if S=0S+1var(S)if S<0

ZMK

  • ZMKZ1α
  • ZMKZ1α
  • |ZMK|Z1α/2

En este hilo puedes encontrar el código R que implementa esta prueba.

SpSpSdataSpermutationSdataSpermutation


Gilbert, RO (1987). Métodos estadísticos para el monitoreo de la contaminación ambiental. Wiley, Nueva York.

Önöz, B. y Bayazit, M. (2003). El poder de las pruebas estadísticas para la detección de tendencias. Revista turca de ingeniería y ciencias ambientales, 27 (4), 247-251.

Tim
fuente
1

El problema que tiene "No puedo usar la regresión lineal clásica debido a una fuerte autocorrelación temporal (en serie) entre los valores". Es en realidad una oportunidad. Tomé sus 27 valores y usé AUTOBOX un software (que he ayudado a desarrollar) que puede (opcionalmente) determinar automáticamente un posible modelo. Aquí está el gráfico real / ajuste y pronóstico ingrese la descripción de la imagen aquí. El ACF de los residuos está aquí con el gráfico residual aquí ingrese la descripción de la imagen aquí. El modelo está aquí ingrese la descripción de la imagen aquíy aquí ingrese la descripción de la imagen aquíy aquí.ingrese la descripción de la imagen aquí. Dos coeficientes describen adecuadamente los datos con una "tendencia" estimada, también conocida como "deriva", es decir, diferencial de período a período de -.596. Tenga en cuenta que este es un tipo de tendencia en la que su modelo utiliza los números de conteo 1,2, ... 27 como variable predictiva. Si sus datos sugirieran ese tipo de tendencia, entonces el software lo habría encontrado más aplicable. Trataré de encontrar una publicación anterior que detalla completamente / contrasta estos dos tipos de tendencias. Aquí Identificar un modelo de tendencia estocástica y detectar tendencias iniciales o valores atípicos

ingrese la descripción de la imagen aquí

IrishStat
fuente
2
El pronóstico de Autobox pierde todos los puntos interesantes de 1996, 1999, 2000, 2009 en los que se rompe la tendencia reciente. Es casi como un cambio de fase por un año. En ese sentido, no explica nada.
Aksakal
Su recomendación anterior (lengua en la mejilla) de ajustar un polinomio de alto grado a los datos haría exactamente lo que pidió. Pero no se trata de ajustar, se trata de modelar. La gráfica residual parece describir adecuadamente un proceso de error debido a algún factor externo / desconocido. Todos los modelos están equivocados pero algunos son útiles. Creo que este es un modelo útil, pero si crees que puedes hacerlo mejor, publica tus resultados para que todos podamos aprender. No hay una explicación de un modelo ARIMA, ya que el pasado es solo un proxy para las variables omitidas.
IrishStat
2
En este caso, parece que no hay mucho que ver con las estadísticas. No es una pregunta estadística interesante en absoluto. Hay una tendencia obvia, y OP debe estudiar la física del fenómeno. Creo que estos ajustes del modelo de Autobox simplemente llevan a OP en la dirección incorrecta. No están revelando nada de valor más allá de lo que ya es evidente.
Aksakal
La pregunta es si la analítica puede o no reemplazar al ojo humano ... El análisis revela qué es lo que el ojo respalda. Es por eso que practicamos estadísticas con el fin de hacer posiblemente más de lo que puede verse de inmediato. La solución AUTOBOX dirige el OP en la dirección correcta, es decir, hacia abajo. En mi opinión, sus comentarios no son nada productivos, PERO, como pregunté anteriormente (cortésmente), proporcione una alternativa viable basada en estadísticas. En mi opinión, esta es una pregunta estadística muy interesante y requiere una respuesta. Proporcione uno si puede.
IrishStat
1

Puede usar el coeficiente de correlación de rango de Spearman para determinar el grado en que sus datos son monótonos. Devuelve valores positivos para datos monotónicos crecientes y valores negativos para datos monotónicos decrecientes (entre -1 y +1). Siguiendo el enlace de arriba, hay también una prueba de significación sección que trata, aunque estoy seguro de que la mayoría de los paquetes de software tendrán un valor de p hecho por usted cuando se calculan los coeficientes de correlación (por ejemplo, en Matlab: [RHO,PVAL] = corr(...); en I: cor.test(x,...))

Alexander F.
fuente
0

Puede usar OLS porque no hay autocorrelación en serie (al menos en la muestra que proporcionó); observe la estadística de prueba de Durbin-Watson de 1.966 (≈2).

Entonces, la estimación del coeficiente significativamente negativo para x1 es todo lo que necesita decir algo como

El recuento observado de [ciertas especies] está disminuyendo en aproximadamente 1,000 por año.

o

El recuento observado de [ciertas especies] está disminuyendo entre 628 y 1,408 por año (con un 95% de confianza).

Esto supone que la metodología para contar las especies tiene una buena cobertura y es consistente a lo largo de los años en su muestra.

ingrese la descripción de la imagen aquí

Esto se produjo con este código de Python (lo siento; no tengo R a mano):

import numpy as np
import statsmodels.api as sm

y = [10,12,10,11,8,9,6,4,2,4]
x = np.arange(len(y))
x = sm.add_constant(x)

mod = sm.OLS(y, x)
result = mod.fit()
print(result.summary())
America
fuente
0

Conocer la fuente de datos sería muy útil, y también la información si los valores de my.tspodrían ser negativos o no.

Sin embargo, al echar un vistazo rápido a la trama, en lugar de ver una tendencia lineal constante , sugiero que la serie temporal no es estacionaria, por lo tanto, está integrada . Como ejemplo, los precios de las acciones también están integrados, pero los rendimientos de las acciones ya no (fluctúan cerca de 0).

Esta hipótesis también se puede probar con la prueba de Dickey Fuller aumentada:

require(tseries)
adf.test(my.ts)

Augmented Dickey-Fuller Test
Dickey-Fuller = -2.9557, Lag order = 2, p-value = 0.7727
alternative hypothesis: stationary

Dado que el valor p no es inferior a 0.05, no hay evidencia de que el proceso sea estacionario.

Para obtener los datos estacionarios, debe diferenciarlos:

diff.ts <- diff(my.ts)
plot(diff.ts)

ingrese la descripción de la imagen aquí

Ahora los datos ya no muestran tendencia , y lo único que encontrará es un término autorregresivo de orden 2 (usando acf(diff.ts)).

lambruscoAcido
fuente