Is the result from xcorr(zscore(X),zscore(Y), 'coeff') the same as correlation coefficient for each lag position?
7 views (last 30 days)
I have 2 data sets (X and Y). Both have different units, so I standardized them by calculating zscores for each data set. I would like to get correlation coefficient (r) between the 2 data sets for each lag position. I'm trying to understand if xcorr(zscore(X),zscore(Y), 'coeff') gives me r for each lag position.
Naman Chaturvedi on 14 Sep 2018
Yes, you are correct. It does give the correlation coefficients for the every lag values. By using 'coeff' the following changes are made:-
xcorr(x,y,'coeff') = xcorr(x,y)/(sqrt(sum(abs(x).^2)*sum(abs(y).^2)))
Although, this xcorr(x,y,'coeff') is different from the pearson's definition of corr. coeff. in the sense that it doesn't subtract mean of x and y, your application will give the correct ans as the zscore already performs the normalization.
Check out the documentation for xcorr if you haven't already.
Hope this helps!