2024-04-30 03:54:04 发布
网友
我使用下面的代码在我拥有的数据框架上运行Granger因果关系测试。代码运行良好,返回我期望的正确结果,但是,我想知道是否可以使用python在图表中绘制数据,显示因果关系?
类似的东西:
我尝试使用下面的代码,并成功地返回数据。
print(grangercausalitytests(df[['Number_of_Ethereum_Searches', 'Price_in_USD']], maxlag=1, addconst=True, verbose=True))
如果您试图直观地检查这一点,那么您应该使用互相关图。这说明了两个时间序列之间相关性的强度。在
让我们用一个例子来说明这一点。考虑以下两个变量:
你有没有注意到北半球最热的月份是7月/8月,而最长的一天是6月21日吗?这是由于一个时间延迟,即在一个月左右,最大日照的影响不会导致最高温度。在
如果要绘制一个互相关函数来描述这一点,下面是它的样子(包括代码)。在
# Import Libraries import numpy as np import pandas as pd import statsmodels import statsmodels.tsa.stattools as ts from statsmodels.tsa.stattools import acf, pacf import matplotlib as mpl import matplotlib.pyplot as plt import quandl import scipy.stats as ss import os; # Set Path path="directory" os.chdir(path) os.getcwd() # Variables dataset=np.loadtxt("dataset.csv", delimiter=",") x=dataset[:,1] y=dataset[:,0] plt.xcorr(x, y, normed=True, usevlines=True, maxlags=365) plt.title("Sunlight Hours versus Maximum Temperature") plt.show()
互相关图
也可以绘制这些曲线的ACF(自相关)和PACF(部分自相关)图。在
自相关和部分自相关图(最高温度)
自相关和部分自相关图(日照时数)
注意日照时数的相关强度如何持续超过最高温度,这意味着长日照时数的影响持续影响温度(即一个是格兰杰引起的另一个)。在
希望上面的例子能有所帮助。我建议同时研究交叉相关和自相关,以便更好地了解数据中格兰杰因果关系的本质。在
如果您试图直观地检查这一点,那么您应该使用互相关图。这说明了两个时间序列之间相关性的强度。在
让我们用一个例子来说明这一点。考虑以下两个变量:
你有没有注意到北半球最热的月份是7月/8月,而最长的一天是6月21日吗?这是由于一个时间延迟,即在一个月左右,最大日照的影响不会导致最高温度。在
如果要绘制一个互相关函数来描述这一点,下面是它的样子(包括代码)。在
互相关图
也可以绘制这些曲线的ACF(自相关)和PACF(部分自相关)图。在
^{pr2}$自相关和部分自相关图(最高温度)
自相关和部分自相关图(日照时数)
注意日照时数的相关强度如何持续超过最高温度,这意味着长日照时数的影响持续影响温度(即一个是格兰杰引起的另一个)。在
希望上面的例子能有所帮助。我建议同时研究交叉相关和自相关,以便更好地了解数据中格兰杰因果关系的本质。在
相关问题 更多 >
编程相关推荐