Я получил следующие 56 столбцов, заполненных случайными числами:
Я хочу добавить дополнительный столбец с автокорреляциейколонка 1-56 с определенной задержкой.Таким образом, если задержка равна 1, то результат равен 0,42, когда задержка равна 2, 0,06 и т. Д.
Это код, который я использую:
def autocorr(x, t):
return np.corrcoef(np.array([x[0:len(x)-t], x[t:len(x)]]))
где, я полагаю,x - это кадр данных, а t - это задержка.
Однако, когда я пытаюсь добавить столбец с автокорреляцией с lag = 1, я получаю:
df["output"] = autocorr(df,1)
error: ValueError: notскопировать последовательность с размером 0 на ось массива с размером 56
Что я делаю не так или есть более простой способ расчета автокорреляции с определенной задержкой?
Оцените помощь
Стивен
обновление: я постоянно пытаюсь настроить, но не могу найти его.Кто-нибудь ?????
Я попробовал следующий код:
def autocorr(x, t):
return np.corrcoef(np.array([x[:len(x)-t], x[t:len(x)]]))
Но это дает мне ошибку:
Файл "", строка 1 autocorr (df (axis = 1,1)) ^ SyntaxError: позиционный аргумент следует за ключевым аргументом