I will be using aerial photography/Object Based Image Analysis to separate plants in a field from their background, creating a polygon for each plant.

I will then convert these polygons to point on centroid and retain each polygon's area attribute, yielding DATASET 1.

I have a raster map of soil moisture of this field, DATASET 2, upon which I will overlay and georeference DATASET 1.

I will be normalizing the data so all raster pixel values in DATASET 2 and point values in DATASET 1 fall between 0 and 1.

I want to analyze the spatial correlation between the values of the points in DATASET 1 (plant area) collocated with values in DATASET 2 (soil moisture).

Can anyone suggest a technique to execute this? I have done a lot of research yet am finding it hard to find precedent to wrap my head around the problem.

I will be using ArcGIS 10.3 for Desktop to process the datasets.

  • Have you looked into bivariate Ripley's K? gis.stackexchange.com/q/44873/8104 – Aaron Nov 8 '15 at 3:35
  • Thank you Aaron. I believe the K-function relates to PPA however; what I'm looking for is a relationship between a point value at a location in a vector dataset and pixel values at the same (or neighbouring) location, when the vector dataset is overlaid on and georeferenced to the raster dataset. – monkeyshines Nov 8 '15 at 6:54
  • Are you looking to create a correlation matrix telling you how often plant X correlates with soil moisture Y? Or do you have trouble extracting the soil moisture raster value for each plant point? – Kersten Nov 8 '15 at 8:24
  • Hello Kersten, the goal is more to identify whether there is a correlation between soil moisture (DATASET 2, interpolated raster surface) and larger plants (DATASET 1, points with area value embedded in the attribute table). I guess your second question is closer to what I'm trying to do. Perhaps I should take the mean soil moisture value of a certain size radius from the raster, originating from the location of the point, and perform simple regression analysis? – monkeyshines Nov 8 '15 at 14:32

You should use "Extract Values to Points (Spatial Analyst)", to join pixel values to your point feature class. Make sure to check "Interpolate values at the point locations" so any missing value gets interpolated based on its surrounding pixels.

you will end up with a point feature class containing both plant area and soil moisture as attributes. To find the correlation you have many options:

  1. Export the table to a xls and use excel (Simplest)
  2. Use ArcGIS Graph to draw a linear regression line between the two variables
  3. Use python (numpy) to do get the correlation matrix
  • Hello Farid, thanks for your answer; this seems to be an elegant solution. I do have some further questions for you if you're so inclined. 1. Is there a way to take the mean raster value using a radius from the location of the vector points, and use that value (perhaps based on the mean plant area attribute?) 2. I like the idea of using ArcGIS Graph for regression, yet I would like to output a map with symbology based on level of correlation. How would you go about this? Thanks! – monkeyshines Nov 8 '15 at 14:47
  • 1
    You first question is better to be asked in another post. By "level of correlation" if you mean residuals, then you have to use scipy (python library) or numpy to fit a linear regression and then calculate the difference of actual and predicated values to get the residuals. You can not do this type of things with ArcGIS Graph! – Farid Cheraghi Nov 8 '15 at 15:32
  • OK, very good. Am writing another post for question 1 as we speak. My second question was not clear; what I would like to produce would be a map showing the relationship between the soil moisture (originally raster) and plant area attributes. I will use the field calculator to reduce both values to 0-1 by: (attribute value/dataset mean attribute value) - 1 I suppose I could use residuals to show the departure between the two variables. I want to visualize any existing spatial correlation between the two variables by way of a map. You are suggesting I could use residuals to this end? – monkeyshines Nov 8 '15 at 15:51
  • 1
    Put another way, once I have transformed the raster to my satisfaction, and used Extract Values to Points, I should use OLS to display the relationship between the dependent (plant area) and explanatory (soil moisture) variables and use the residuals to display the relationship? – monkeyshines Nov 8 '15 at 18:13
  • That is possible. If the OLS (Exploratory Regression) gives you the residuals then you can use it. more residual implies the less correlation between the two variables! You can visualize it with unique values feature of arcgis symbology. – Farid Cheraghi Nov 8 '15 at 18:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.