MATLAB: Correlations

correlationmcorr

Hello all,
I am doing an analysis of rainfall data at 180 weather stations and would like to determine which of its neighbours each has the highest correlation with. All time series are vectors of monthly data for the period 1971-2000. I have tried compiling a matrix with time series vectors as columns then using mcorr to correlate each vector with that matrix/compilation. That method gives me the results I need, but is inefficient and slow.
Any suggestions on a better way to do the correlations with all 180 stations?

Best Answer

Try this:
M = corrcoef(DATA);
imagesc(M)
Colors would show you correlations between all pairs from the set of 180 weather stations. To more detailed view you could invoke imagesc() like that
imagesc(log2(abs(M))
To manipulate colors you can also change color map
colormap(flipud(gray))
NOTICE: DATA is matrix which each column is a vector of observations from a single station, so
>> size(DATA)
should give answer
ans =
360 180