我正在寻找对以下函数的修改,以便对每一行进行自相关计算,而不仅仅是第一行。
以下功能是我使用的功能:
import pandas as pd
import numpy as np
df = pd.read_excel("directory\\file.xlsx")
def autocorr(x, t):
y = np.corrcoef(np.array([x[0:len(x)-t], x[t:len(x)]]))
return y
df1 = df.copy(deep=True)
for index,row in df1.iterrows():
df1["output1"] = autocorr(df.T[0], 1)[0, 1]
df1["output2"]= autocorr(df.T[0], 2)[0, 1]
df1["output3"]= autocorr(df.T[0], 3)[0, 1]
df1["output4"]= autocorr(df.T[0], 4)[0, 1]
df1["output5"]= autocorr(df.T[0], 5)[0, 1]
df1["output6"]= autocorr(df.T[0], 6)[0, 1]
df1["output7"]= autocorr(df.T[0], 7)[0, 1]
df1["output8"]= autocorr(df.T[0], 8)[0, 1]
df1["output9"]= autocorr(df.T[0], 9)[0, 1]
df1["output10"]= autocorr(df.T[0], 10)[0, 1]
df1["output11"]= autocorr(df.T[0], 11)[0, 1]
df1["output12"]= autocorr(df.T[0], 12)[0, 1]
df1
但它不断给出以下结果(所以第一行的结果,复制到第二,第三,...行):
我已经尝试了所有方法,但无法对每一行分别进行。
相关分类