Spatial Weights Matrix

301
1
03-14-2011 09:19 AM
MollyCohn
New Contributor
I am trying to generate a spatial weights matrix with individual level data.  However, none of the default options (to my knowledge) correctly capture the conception of a neighborhood that I am trying to use.  Specifically, I'd like to define each individual's neighborhood as their census tract (all individuals within each observation's tract gets a 1, all individuals not in the observation's tract get a zero--though it would be nice to also approximate the matrix using inverse distance, with a distance band equal to the tract boundary).  I have a separate shapefile with the tract boundaries, as well as a column in my attribute table for the individual level data specifying the tract that each observation is in. 

Is there a way to do this?

Thanks!
0 Kudos
1 Reply
MarkJanikas
New Contributor III
Hello mjcohn,

You are quite right that we do NOT currently have an option for what you are looking for.  We are going to be coming out with a Group Similar Features Tool in the next release that will perform traditional and spatially constrained clustering based on kmeans and minimum spanning tree algorithms... the output from this tool will provide groups that, like yours, would be great to place as input for spatial weights.  In short, we have discussed this, but it is not on our current dev plans.  If you know Python, you could construct a text based weights file and use it as input into the Spatial Weights Tool (as dbf).. or directly as input as a GWT type file.  The format would be:

UniqueIDFieldName
UniqueID NeighborID Weight (In your case, always a one)
...
...
...

IMO, that would be your quickest solution.  Ill talk with the rest of the SS crew and perhaps we will have what you are asking as a sample... or perhaps in a future release.
0 Kudos