我试图找到延迟值,使两个矢量之间的相关性最大化。我有足够的数据来截断每个向量的某些值,而不会影响结果的准确性。
来自plt.xcorr
的其他答案,这似乎适合我的应用程序,但它给出的结果非常奇怪。对于-5和5之间的所有延迟值,它给出了0.9以上的相关值。
我的数据框df
的前10个值:
Date Val1 Val2
2005-01-03 32.12 16.97
2005-01-04 31.88 16.96
2005-01-05 31.98 16.80
2005-01-06 32.60 17.12
2005-01-07 31.76 16.62
2005-01-10 31.96 16.83
2005-01-11 31.74 16.97
2005-01-12 32.02 17.42
2005-01-13 32.10 17.55
2005-01-14 32.19 17.98
当我申请plt.xcorr(df.Val1,df.Val2)
时
我得到了这些相关性:
(array([-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2,
3, 4, 5, 6, 7, 8, 9, 10]),
array([ 0.97790633, 0.97825209, 0.97863114, 0.9789973 , 0.97938754,
0.97975968, 0.9801407 , 0.98052259, 0.98091406, 0.9813025 ,
0.98170846, 0.98122911, 0.98076348, 0.98030818, 0.97987819,
0.97944349, 0.97901753, 0.97858155, 0.9781612 , 0.97774505,
0.97734392])
这些不正确。 我做错了吗? 或者,是否有人有更好的建议如何获得最佳延迟以最大化我的向量之间的相关值?