CSV cleanup should explain what it rejected. I built a small Python CLI as a personal project usi...CSV cleanup should explain what it rejected. I built a small Python CLI as a personal project usi...
The network for creativity
Join 1.25M professional creatives like you
Connect with clients, get discovered, and run your business 100% commission-free
Creatives on Contra have earned over $150M and we are just getting started
CSV cleanup should explain what it rejected.
I built a small Python CLI as a personal project using synthetic data. Its five-row example produces three accepted rows and two rejected rows, with a separate report naming each rejection reason.
The rules are explicit: trim surrounding whitespace, keep the first occurrence of each nonempty record ID, and reject missing or duplicate IDs. IDs stay as strings, so leading zeros survive. Python’s CSV parser handles quoted commas correctly. Email domains are lowercased while local-part casing is preserved; this does not verify email deliverability.
Rerunning with existing output filenames fails instead of overwriting them. Malformed input is rejected before output files are created. The repository includes sample inputs, expected outputs, five CLI tests, and run instructions.
I’m available for small data-processing tasks with clear sample inputs and expected outputs; share the rules and I can assess the scope.

github.com

automation-portfolio-demos/csv-cleanup at main · codeofwxz/automation-portfolio-demos

Three self-directed AI-assisted Python automation demos with synthetic data and CLI tests - codeofwxz/automation-portfolio-demos

Back to feed
The network for creativity
Join 1.25M professional creatives like you
Connect with clients, get discovered, and run your business 100% commission-free
Creatives on Contra have earned over $150M and we are just getting started