python – Resultados diferentes en ndiffs de pmdarima (Series temporales)


estoy trabajando con series temporales. Tengo una serie temporal que claramente tiene un componente estacional y de tendencia. Cuando hago un test de raíz unitaria obtengo un p-valor de 0.98, indicando que no es estacionaria.

Pero cuando tomo las diferencas en pmdarima, los test de Philippe Perron yDickey Fuller devuelven 0, cuando claramente tiene tendencia. KPSS devuelve 1, lo que parece más razonable.

Por qué obtengo resultados diferentes? Significa que no tiene tendencia?

from pmdarima.arima.utils import ndiffs

difs_adf = ndiffs(train_, test = "adf")
difs_kpss = ndiffs(train_, test = "kpss")
difs_pp = ndiffs(train_, test = "pp")
print(difs_adf , difs_kpss , difs_pp)

Por otra parte, qué significa el parámetro “regression” en el test adf de stattools? Se usa “ct” cuando tiene tendencia? qué significa constante? Es sinónimo de heterocedasticidad?

from statsmodels.tsa.stattools import adfuller, kpss

adf = adfuller(train_, regression='ct', autolag='AIC')
print(f'ADF Statistic: {adf(0)}')
print(f'p-value: {adf(1)}')

introducir la descripción de la imagen aquí