1

我一直在使用 Matlab 的时间序列工具箱tstool来计算两个时间序列之间的相关性,这非常有效,并且给了我非常丰富的图表。

我需要做的是为大量向量生成这样的相关图,因此在脚本中,我读过tstool使用该xcorr函数但我还没有找到如何使用它来产生类似于 tstool 的结果。

有没有办法查看在 tstool GUI 中生成相关图的脚本?

或者一种从脚本中调用 ts 工具的方法,例如:

ts = new tstool;
ts.corrplot(A,B)

或者其他一些生成 tstool 之类的相关图的方法,我对脚本中的滞后比例特别感兴趣?

4

2 回答 2

1

这是你要找的吗?

你可以使用plotmatrix()

在此处输入图像描述

或者,如果您有计量经济学工具箱,则corrplot()

在此处输入图像描述

于 2013-04-13T21:38:35.053 回答
1

据此:_

互相关算法:在计算两个向量值时间序列 x 和 y 的互相关时,时间序列工具使用一种算法,该算法在功能上等同于xcorr使用“偏置”选项调用 Signal Processing Toolbox™ 函数,在时间序列均值已被删除。然而,与 xcorr 不同的是,时间序列工具中的互相关估计也适用于矩阵值时间序列 X 和 Y,它计算所有组合的 X(:,i) 与 Y(:,j) 的互相关列 i 和 j。请注意,时间序列工具实际上并不使用 xcorr 代码,而是在这些受限假设下工作的简化版本。

这应该有效:

%# random signal
y1 = cumsum(rand(1000,1)-0.5);

%# autocorrelation
maxlag = length(y1);   %# set a max lag value here
[c,lags] = xcorr(detrend(y1), maxlag, 'biased');

%# plot
plot(lags,c), xlabel('lags'), ylabel('autocorrelation')

自相关

请注意,结果可能与时间序列对象图有点不同(取决于使用的时间单位)

于 2013-04-13T21:39:22.527 回答