0

如何x(t) (t=1,2...n)在 Matlab 中测试时间序列是否为白噪声?

x(t)不必是高斯的。kstest()不管用。autocorr(X)只测试自相关;它没有显示每个 t 处的平均值为零。

谢谢

4

2 回答 2

1

对于白噪声,条件不是每个均值 = 0 t,而是序列的总体均值。每个值都t需要是独立的,并且总体平均值需要为零。

x(t)在给定的for different序列中t,在每个处谈论均值是没有意义的t(因为每个处只有一个值t

于 2013-10-06T18:38:22.183 回答
0

您可以使用 autocorr() 来确定信号是否为白噪声。连续白噪声信号的自相关在 t=0 时有一个强峰值(狄拉克函数),并且对于所有 t 不等于 0 为 0。

假设您有一个离散信号,我假设这个有限离散序列的结果看起来更像高斯,但随着信号长度的增加, autocorr() 将更接近于狄拉克脉冲。

你提到的另一个条件,零均值可以被测试,但不是无限精确的,因为你只有有限数量的元素......但如果 Matlab 给你一个相当接近于零的平均值,这是一个强有力的指标,你得到了噪声信号。

另外:http ://en.wikipedia.org/wiki/Autocorrelation

于 2015-06-02T11:07:29.953 回答