Calculate average values from observations within a distance weighted by the square of the inverse distance

7060
22
Jump to solution
06-02-2016 10:54 PM
ZHIZUO
by
Deactivated User


I have a shape file for U.S. county centroid, and another shape file for temperature point observations across the U.S.

I'd like to calculate the average temperature for each of the county centroid, from the temperature observations within a certain distance of the centroid, weighted by the square of the inverse distance. Could anyone let me know which tool(s) should I use to get this outcome? Thanks very much in advance.

Alec

0 Kudos
1 Solution

Accepted Solutions
AbdullahAnter
Honored Contributor

I updated the model  as row 03 in Dan reply.

I think that what you want, isn't that?

you can download it in attachments.

View solution in original post

22 Replies
NeilAyres
MVP Alum

"weighted by the square of the inverse distance", distance to / from what?

Wouldn't just a simple IDW interpolation of the temperature points, then get the average for each county be good enough?

0 Kudos
ZHIZUO
by
Deactivated User

Hi Neil, it is distance from a county centroid to any temperature point that is within a certain distance of the centroid, say 100 kilometres. I think IDW interpolation creates a raster layer. Then zonal statistics could get an average value for a county. But this is still different from what I intend to do. Thank you for your reply.

0 Kudos
DanPatterson_Retired
MVP Emeritus

besides the math issue trying to obtain county level information from country level data is a very poor mix of data source scale.  Have you explored the possibility that data may be available at the county level, or at worse, the state level?

0 Kudos
ZHIZUO
by
Deactivated User

Hi Dan, thank you for your reply. I am using temperature as an example. I also need to get many other variables. But there is no available county level data. 

0 Kudos
AbdullahAnter
Honored Contributor

You can do that with model builder,

Just add two  fields in U.S. county centroid Feature class, the first field you will calculate a certain distance (weighted by the square of the inverse distance).the second field for average temperature values but you will let that field Null

then run buffer tool using the distance field.

select by location for all temperature point observations within each polygon

use summary statistics tool to get average

get this value and make field calculate in the second field that you created

you will use iteration selection, to do that for each polygon buffer.

thanks

0 Kudos
ZHIZUO
by
Deactivated User

Hi, Abdullah, your suggestion is very good. I am new to GIS so need to explore a bit how to use model builder to get this done.

But for the first distance field, what should be entered at first? I am not sure what a certain distance means. I will need all the temperature points within 100kms of a county centroid. Does it mean the first field needs to be 1/10000?

Thanks again for your reply.

0 Kudos
AbdullahAnter
Honored Contributor

Is the distance 100 km for all centroid county or it is varies ?

0 Kudos
ZHIZUO
by
Deactivated User

It is fixed at 100km radius for every county centroid.

0 Kudos
AbdullahAnter
Honored Contributor

very good you will not need to add two fields

you will create one field only in County centroid feature for ( average temperature)

and I will create the model , and I will attach

0 Kudos