В основном у меня есть фрейм данных временного ряда, подобный следующему:
Year CPI Employment Salary
1991Q1 100 200 50
1991Q2 90 220 55
1991Q3 105 215 57
и т. Д. *
Столбец «Год» - это мой индекс. Сейчас я пытаюсь выполнить ADF-тест (3 типа) и хочу получить результаты в следующем формате:
Variable name ADF1 ADF2 ADF3
CPI .. .. ..
Employment .. .. ..
Salary .. .. ..
У меня есть следующая функция, которая работает для одной переменной:
def adf_test(timeseries):
array=np.arange(0,1)
dftest1 = adfuller(timeseries,regression='c', autolag='AIC')
dftest2 = adfuller(timeseries,regression='ct', autolag='AIC')
dftest3 = adfuller(timeseries,regression='ctt', autolag='AIC')
output={'Variable':'CPI','ADF1':dftest1[1],'ADF2':dftest2[1],'ADF3':dftest3[1]}
dfoutput=pd.DataFrame(output,index=array)
print (dfoutput)
#apply adf test on the series
adf_test(dataframe['CPI'])
Кажется, я не могу найти способ применить это ко всему фрейму данных, который имеет 30 переменных.