brucemcminn I think your project looks great. It’s an interesting approach and easy to follow.
It sounds like you are interested in exploring geospatial analysis. Apologies in advance if the following is too detailed.
One thing to keep in mind is Toblers First Law of Geography: "“everything is related to everything else, but near things are more related than distant things.” This describes the phenomenon of spatial autocorrelation. What this means for your analysis is that running a traditional correlation on postal codes can cause misleading results since it discounts the spatial pattern.
Another way to say this is we would expect neighboring postal codes to be more similar than distant postal codes. Morans I is a method to quantify this spatial effect on your data. It provides a global and locate measure. The global measure ranges from -1 to 1. 1 means that neighbors are very similar, -1 means neighbors are very different and 0 means that there is no spatial effect (in this case you could use a traditional correlation measure).
PySAL is a python package that allows you to calculate Morans I. There is also GeoDa, a free and open-source software package that is fairly easy to use and has good documentation. For either of these, you would need a spatial definition for the postal codes (e.g., shapefile or geojson).
Generally, there are some extra considerations for spatial data analysis. There are a lot of amazing tools to map our data, but without caution, the results can be misleading.