Updated mapping and respective files with download script in NCSES_Employed_College_Grads_Import - #2203
Conversation
There was a problem hiding this comment.
Code Review
This pull request refactors and documents the NCSES Employed College Graduates import pipeline. Key changes include adding a dynamic scraper and header normalizer script (download.py), updating the mapping configuration (pv_map.csv) with future years and header directives, introducing a validation configuration (validation_config.json), and significantly expanding the documentation in README.md. Feedback is provided regarding manifest.json, where running download.py directly without the python3 interpreter or a path prefix will cause execution failures in Unix/Linux environments.
Import Code Review: PR #2203 & Bug b/535027917PR: datacommonsorg/data#2203 ( Key Findings & Required Actions[P0] Validation Threshold Blocks Production Auto-Refresh
[P1] Missing Mandatory
|
[P0] Validation Threshold Blocks Production Auto-Refresh [P1] Missing Mandatory node_mcf in manifest.json [P1] Missing Mandatory Freshness / Date Validation [P1] Unit Test Suite Omitted from PR Commit [P2] Test Fixtures & Housekeeping [P3] Code Hygiene & Consistency Removed _retry_method and updated resolve_url() to use the public download_util.request_url(). Added #!/usr/bin/env python3 to the top of download.py |
saanikaaa
left a comment
There was a problem hiding this comment.
I see deletion in test run. https://screenshot-v2.corp.google.com/5tstqqt2ioqeo
This will again led to failure. Pls look into it
|
Pls add import name in PR title |
Added |
The deletion is expected due to PVmap changes. Please refer to the Deletion report |
hareesh-ms
left a comment
There was a problem hiding this comment.
Take a look at the review comments addded.
No new comments are visible. Please point to the comments |
|
I am wondering why we have to add a default deletion threshold. If we know that the deletion is expected in this case, we should simply allow the ingestion for this particular run. I would like to know if there is a different guidance share with the team to address deletions. |
Hi Vishal, as a standard practice, we are adding a deletion threshold to all the imports irrespective of the deletions. Here the deletion is expected and the import will still fail in the validation even if we remove the deletion threshold. Please suggest if there is a different understanding |
Import name : NCSES_Employed_College_Grads_Import
Test job run: ncses-employed-college-grads-import-smarthg-20260908-060246
validation_output.csv: LINK
differ_summary.json: LINK
Note: Validation reflects 1 deletion and multiple modifications. All of these are justified and expected due to updates in the PVmap. These will be fixed with updates in the latest_version.txt once approved.
Summary
This PR refactors and fixes data mapping and download for the NCSES_Employed_College_Grads_Import.
Key Changes:
download.py): Automatically finds and downloads the latest survey file from the NSF website based on the table number, and cleans up year column headers (e.g. changing2023ato2023).pv_map.csv): Fixed mapping where overall group totals were mistakenly assigned to specific jobs. For example, the total count of college-educated women (~15.1M) was previously recorded as female engineers instead of the actual count of 154K.validation_config.json): Added validation checks, confirming all changes match the source survey.README.mdand other test files, metadata and manifest file