How to calculate correlation coefficient between two 3-d matrices?

26 Ansichten (letzte 30 Tage)
Sagar
Sagar am 23 Mai 2014
Kommentiert: Sagar am 10 Okt. 2017
This is often required in analyzing climate data from netcdf files. Climate variables are stored in 3-d matrix (lat, lon, time). I want to find correlation coefficient between two 3-d matrices at each grid cell (i.e. correlation along time or 3rd dimension). Is there an easier way to do this, without reshaping, for geometric intuition of the grid map? Also how to get the p-value at each grid cell after calculating the correlation?

Antworten (2)

Adapa Bhagyaraja
Adapa Bhagyaraja am 10 Aug. 2015
Hello Sagar, There is a question similar to this. Check answer at http://in.mathworks.com/matlabcentral/answers/15884-correlation-for-multi-dimensional-arrays

André Gadêlha
André Gadêlha am 10 Okt. 2017
Hi, Sagar.
Did you understand? I have got the same problem with netcdf analysis. How can I do it?
Best Regards,
  1 Kommentar
Sagar
Sagar am 10 Okt. 2017
There is no way to do it directly. You must reshape the matrix and convert to vectors. After that you can calculate correlations in a loop.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by