# How to do regression analysis between two variables using ArcGIS

I have a temperature image (interpolated from climatic point data) and NDVI data at the monthly interval. I need to do correlation analysis between temp and NDVI. Is it impossible to do this using ArcGIS. If so, can you tell me how to do it. It'll help me a lot.

Many thanks

-
are you looking to do a spatial correlation (spatial autocorrelation) or a regression analysis? –  artwork21 Jun 14 '11 at 11:37

It is usually a mistake to estimate correlations between grids when one or both have been interpolated: the estimate often reflects the interpolation method rather than the data themselves. Moreover, you will always grossly over-represent the degrees of freedom, typically leading to falsely high estimates of confidence and precision.

When one dataset is a grid of measurements, or derived from measurements (as NDVI is) and the other is a point dataset, it's both better and simpler to extract the grid values at the point locations, forming an (x,y) dataset. In this case x would be the temperature at one of the points where temperature actually is observed and y would be the NDVI value at that same location. There will therefore be one (x,y) datum for each temperature datum available to you.

ArcGIS is not the software to perform a rigorous analysis of an (x,y) dataset: as @Mike Toews suggests, use statistical software. There are Web apps that will compute correlations, perform ordinary least squares regression, draw scatterplots, and give you confidence intervals for the parameters. Even handheld calculators will do this... In general, though, for anything except self-instruction, you're best off using well-tested software such as `R` or a commercial statistics package.

-
GeoDa is a good, simple, geographical statistics package that would do this nicely for you. –  Chris Strother Jan 8 at 15:03

First, make sure your rasters have the same shape (rows×cols; bounds). You can perform a multivariate regression analysis with the Spatial Analyst extension for ArcGIS. I'd start with this approach.

If you want to get really fine-tuned/serious, you can read both data sets into R (via rgdal), then perform a suite of statistics on the co-located grid locations or rows of a combined SpatialPixelsDataFrame/data.frame object (e.g. GLM, ANOVA, etc.). This approach will confuse most people, so I would only go in this direction if you are brave or curious.

-