Matlab:计算时间序列的相关性

时间:2014-11-24 20:00:05

标签: matlab time-series covariance mean

时间序列模型表示为

y(t) = 0.5 + 0.3y(t-1) + n(t)

其中

n(t) = 0.1*randn(500,1) for t=1,2,...,500

Slides包含相关和协方差矩阵。相关公式为:E[y(t)*y(t)^T],可以使用xcorr调用。我想知道如何在不使用内置命令的情况下为其滞后版本E[y(t-1)*y(t-1)^T]计算单独的相关矩阵,以便最终实现以下表达式

 trace([E[y(t-1)*y(t-1)']]^-1) 

更新

例如,让

y = randn(10,1);

for t = 1:10
disp(y(t));
end

Expectation_y =  sum(y(1:end))/10

同样,我如何对滞后变量执行期望,然后实现公式=

 trace([E[y(t-1)*y(t-1)']]^-1)

1 个答案:

答案 0 :(得分:0)

我不确定我是否理解您问题的所有细节,但如果您只是想对信号的延迟版本进行操作,您可以执行以下操作......

%xcorr with a 1-sample shifted version of itself
[c,lags]=xcorr(t(1:end-1),t(2:end));  

%xcorr with a 2-sample shifted version of itself
[c,lags]=xcorr(t(1:end-2),t(3:end));

%etc

如果xcorr不是您想要的操作,您可以使用这种创建时移版本信号的索引方法执行任何操作。