Methodology
18 articles
Well-Executed But Not Important: Reading Importance From the Published Record
LLM classification of 2,493 health-economics articles. Calibration is 35% of publications but 18% of citations; Identification +91% premium, Reframing +126%.
Cycling Through Bad Ideas Faster: A Medicaid Branding Worked Example
A two-week solo cycle through three coding rules, a controls ladder, and a behavioral-mechanism test, ending at a null. What AI compresses is the calendar time of discarding bad ideas.
How to Build a Census Data Pipeline That Doesn't Silently Fail
A Python workflow for pulling ACS data from the Census API, including the validation checks that prevent bad data from reaching the analysis.
How to Estimate Difference-in-Differences in Python
A statsmodels workflow for event study estimation, with the diagnostics that separate credible estimates from noise.
How to Validate GTFS Feeds Before They Break the Routing Engine
A Python workflow for catching the transit data problems that structural checks miss. Six validation layers from download fallbacks to multi-agency smoke tests.
How to Build a Classifier When 94% Accuracy Means Nothing
A scikit-learn workflow for imbalanced classification, with the evaluation metrics that actually matter.
How to Interpret a Classifier with SHAP Values
A Python workflow for understanding what drives model predictions, and what SHAP importance actually measures.
Spatial Analysis with GeoPandas: From Joins to Autocorrelation
A spatial analysis workflow that starts with point-to-polygon joins and builds toward spatial weights, autocorrelation testing, and LISA cluster detection using Python.
The Data We Forgot We Had: A Tagging System for Research Serendipity
Tag datasets by the questions they can answer, not just what they contain. A question-first system makes dormant research data discoverable when new questions arise.
What Happens When You Measure Crime Where People Actually Live?
What happens when you swap county averages for neighborhood data? A 22-fold range in crime rates emerges.
Fix Claude Visualizations with Antigravity Prompts
When Claude and ChatGPT botch research figures, structured Antigravity prompts produce the publication-quality graphics we actually need.
Scaling Up: From 7 Counties to Statewide
Expanding from 2,000 to 9,039 census tracts reveals what scales linearly (Census API, KD-trees) and what requires adaptation (transit aggregation, memory management). Here's what the statewide data shows that county-level analysis missed.
Building a Better Metric: The Residualized Accessibility Index
81% of county-level variation in food security vulnerability is explained by income, density, and car ownership. Here's how residualization separates structural factors from potential policy effects.
Why County Rankings Confound Policy with Context
Merced County's vulnerability index is 2.3 times higher than San Francisco's. But before drawing policy conclusions, we need to understand what that number actually measures.
r5py TravelTimeMatrixComputer: Compute 2.7M Transit Routes
A worked example using r5py and TravelTimeMatrixComputer to compute 2.7M transit travel times from GTFS and OpenStreetMap data, no API keys needed.
The Retail Density Paradox: Why More Stores Mean Worse Data
Developing a verification methodology for EBT acceptance across 7,000 California food retailers
From Methods Paragraph to Working Pipeline: AI-Assisted Implementation
A well-written methodology section is almost executable code. The gap between describing a procedure and implementing it has narrowed dramatically with agent-based coding tools.
Beyond Demographics: How Neighborhood-Level Intersections Predict Food Security Vulnerability
When measuring neighborhood food security vulnerability, single demographic factors don't tell the full story. We built and validated an index that shows how intersecting identities create compounding risk.