В настоящее время я работаю над этой проблемой назначения, чтобы реализовать формулу для матрицы автокорреляции
? = 1 | ? | ∑? → ∈? ((? → −? →) ? →) ? (?→ −? →) ? →
Матрица стандартных отклонений для двух измерений выглядит следующим образом:
S xy x ?? ?? ?? ?? y ?? ?? ?? ??
Код, очевидно, не работает, может кто-нибудь помочь мне, где я ошибаюсь. Входной массив представляет собой массив номер_данные * размеры
example: example_x = [2,2,2]
example_y = [1,2,3]
example_data = np.stack([[1,2,3], [2,2,2]], axis=1)
def autocorrelation(data):
#data is ndimensional array
#u is the mean
#s is sd
x = np.zeros(shape=(data.shape))
norm=np.linalg.norm(data)
automatrix=[]
for row in x:
centered_data = row - row.mean(axis=0)
sd=np.std(data)
c_t=np.transpose(row - row.mean(axis=0))
a= np.dot([c_t/sd],[centered_data/sd])
automatrix.append(a)
return (automatrix/norm)