Skip to content

feat(aggregators): add PyncodaHousingUnitSummarizer#142

Merged
fmckenna merged 1 commit intoNHERI-SimCenter:masterfrom
zsarnoczay:household_statistics
Jan 22, 2026
Merged

feat(aggregators): add PyncodaHousingUnitSummarizer#142
fmckenna merged 1 commit intoNHERI-SimCenter:masterfrom
zsarnoczay:household_statistics

Conversation

@zsarnoczay
Copy link
Contributor

Introduces PyncodaHousingUnitSummarizer to aggregate detailed household-level data (generated by pyncoda) into building-level attributes. This flattening of data facilitates GIS visualization and downstream analysis that relies on building features.

Details:

  • Implements counting logic for Population, Vacancy, and Tenure.
  • Implements demographic aggregation (Income, Race, social characteristics) with specific handling for mixed attributes (e.g., "Two or More Races") and exclusion of vacant units from statistical calculations.
  • Uses "N/A" for missing data to ensure JSON serialization compatibility.
  • Updates the pyncoda example workflow to include this summarization step.
  • Extends test suite with unit tests for edge cases (empty buildings, group quarters) and integration tests.

Introduces `PyncodaHousingUnitSummarizer` to aggregate detailed household-level data (generated by pyncoda) into building-level attributes. This flattening of data facilitates GIS visualization and downstream analysis that relies on building features.

Details:
- Implements counting logic for Population, Vacancy, and Tenure.
- Implements demographic aggregation (Income, Race, social characteristics) with specific handling for mixed attributes (e.g., "Two or More Races") and exclusion of vacant units from statistical calculations.
- Uses "N/A" for missing data to ensure JSON serialization compatibility.
- Updates the pyncoda example workflow to include this summarization step.
- Extends test suite with unit tests for edge cases (empty buildings, group quarters) and integration tests.
@fmckenna fmckenna merged commit 748f928 into NHERI-SimCenter:master Jan 22, 2026
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants