Skip to content

Add 1940 US Census dataset preprocessing pipeline and schema to dpsynth/research/datasets/census/. - #119

Open
copybara-service[bot] wants to merge 1 commit into
mainfrom
cl/960942812
Open

Add 1940 US Census dataset preprocessing pipeline and schema to dpsynth/research/datasets/census/.#119
copybara-service[bot] wants to merge 1 commit into
mainfrom
cl/960942812

Conversation

@copybara-service

@copybara-service copybara-service Bot commented Aug 7, 2026

Copy link
Copy Markdown

Add 1940 US Census dataset preprocessing pipeline and schema to dpsynth/research/datasets/census/.

Includes the end-to-end data preparation and benchmark evaluation pipeline for the
1940 US Decennial Census dataset (~137 million records, 147 attributes):

  • domain.yaml & codebook.json: checked-in public schema and value label codebook.
  • column_types.py: authoritative 147-attribute layout, classifications, and ranges.
  • parse_sas.py: extracts categorical value labels from IPUMS SAS metadata.
  • build_domain.py: generates public, data-independent domain.yaml and codebook.json.
  • convert_to_parquet.py: fast vectorized streaming conversion to sharded Parquet.
  • shuffle_parquet.py: two-phase uniform random scatter/gather shuffler.
  • precompute_marginals.py: single-pass 2-way evaluation marginals via mbi JIT bincount
    (saving the full CliqueVector JAX pytree directly via mbi.save into marginals.npz).
  • README.md: documentation for data access pathways and benchmark usage.

Uses etils.epath throughout for clean, unified filesystem access across local and
cloud storage backends without Copybara strips.

@copybara-service
copybara-service Bot force-pushed the cl/960942812 branch 2 times, most recently from f842f0a to df42709 Compare August 7, 2026 17:16
@copybara-service copybara-service Bot changed the title Add 1940 US Census dataset preprocessing pipeline to dpsynth/research/datasets/census/. Add 1940 US Census dataset preprocessing pipeline and schema to dpsynth/research/datasets/census/. Aug 7, 2026
@copybara-service
copybara-service Bot force-pushed the cl/960942812 branch 2 times, most recently from ba15588 to 904c674 Compare August 7, 2026 20:58
…th/research/datasets/census/.

Includes the end-to-end data preparation and benchmark evaluation pipeline for the
1940 US Decennial Census dataset (~137 million records, 147 attributes):
- domain.yaml & codebook.json: checked-in public schema and value label codebook.
- column_types.py: authoritative 147-attribute layout, classifications, and ranges.
- parse_sas.py: extracts categorical value labels from IPUMS SAS metadata.
- build_domain.py: generates public, data-independent domain.yaml and codebook.json.
- convert_to_parquet.py: fast vectorized streaming conversion to sharded Parquet.
- shuffle_parquet.py: two-phase uniform random scatter/gather shuffler.
- precompute_marginals.py: single-pass 2-way evaluation marginals via mbi JIT bincount
  (saving the full CliqueVector JAX pytree directly via mbi.save into marginals.npz).
- README.md: documentation for data access pathways and benchmark usage.

Uses etils.epath throughout for clean, unified filesystem access across local and
cloud storage backends without Copybara strips.

PiperOrigin-RevId: 960942812
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.

0 participants