Correlation structure

No measure moves alone

Diabetes predicts blood pressure. Food insecurity predicts housing insecurity at ρ ≈ 0.97. The 26 measures form tight blocks — and the blocks track demographics more than medicine.

Public-health dashboards present measures one at a time, as if a city could have a diabetes problem without a blood-pressure problem. The correlation matrix says otherwise. Order the 26 measures so that correlated ones sit together, and the matrix organizes itself into warm blocks — clusters of conditions that travel as a package.

The tightest block is the newest one: the six health-related social needs. Food insecurity and transport barriers correlate at ρ = 0.98 across ZIP codes — about as close to lockstep as real-world data gets. All 6 of the strongest pairs in the matrix are social-needs pairs. A ZIP code where people struggle to afford food is, almost by definition, one where they struggle with housing, transportation, and utility bills. These are not six problems; they are one problem with six names: not enough money where people live.

All 26 measures, against each other

Spearman ρ across ZIP/ZCTA areas, ordered by hierarchical clustering — hover any cell

How to read it: warm cells move together, cool cells move in opposition. The large warm block is chronic disease + behavior + social needs — the burden axis. The cool stripes belong to binge drinking, which correlates negatively with most burdens (it rises with affluence), and cancer, which mostly tracks age rather than deprivation.

The blocks track demographics, not specialties

If the measures formed blocks for medical reasons, you would expect cardiology to cluster with cardiology and dentistry with dentistry. Instead the blocks follow social structure. Put the same 26 measures against neighborhood demographics, and the columns light up far more consistently than any clinical grouping would predict: income and college attainment run cool (protective) down almost the entire list; ADI and poverty run warm.

What tracks each measure

Spearman ρ of each measure with ten demographic context variables — hover any cell

Age 65+ is the great exception: it flips sign depending on whether a condition accumulates with age (cancer, heart disease) or concentrates among the young (loneliness, skipped checkups, housing insecurity). That split is exactly the second principal axis in the one-axis story.

The practical upshot: a ZIP code flagged for any one of these measures should usually be flagged for a dozen. Single-condition programs are aiming at a correlated bundle — which is either discouraging (everything is connected to everything) or encouraging (helping one probably helps the rest), depending on the intervention.

Read this carefully. Estimates are CDC PLACES-style model-based small-area estimates, not direct measurements. Every association here is ecological — it describes places, not people, and implies nothing about causation. Cross-measure models are fit on the ~23,800 ZIP/ZCTA areas with complete data on all 26 measures (coverage is limited mainly by the newer social-needs measures); maps and community-type assignments extend to areas observing at least 18 of the 26. Full details on the methods page.