Standalone backend processing toolkit for 1CijferHO
Project description
Wat is het?
De 1CijferHO Tool automatiseert het verwerken van 1cijferHO-data, zoals:
- ASCII-bestanden zonder duidelijke scheiding tussen velden.
- Metadata-bestanden in ongestructureerde .txt-indeling.
Met deze tool kun je in enkele minuten grote hoeveelheden data verwerken, zonder risico op fouten of verlies van gegevens.
📑 Congrespresentatie(s)
Tijdens de DAIR-conferentie in 2025 hebben we de 1CijferHO Tool gepresenteerd. Bekijk de slides van de presentatie hieronder:
Waarom is dit belangrijk?
1cijferHO-data is essentieel voor beleidsvorming en onderzoek, maar het handmatig verwerken ervan kost veel tijd en brengt risico’s met zich mee. De 1CijferHO Tool biedt een oplossing die:
- Tijd bespaart: Verwerk gigabytes aan data in enkele minuten.
- Betrouwbaar is: Voorkomt fouten door automatische validatie.
- Veilig werkt: Anonimiseert gevoelige gegevens, zoals BSN’s.
- Gebruiksklaar: Levert schone CSV- of Parquet-bestanden voor directe analyse.
Hoe werkt het?
- Start de tool met één eenvoudige opdracht.
- Upload je bestanden (data en metadata).
- Bekijk de resultaten: Je krijgt direct schone, geoptimaliseerde bestanden.
Aan de slag
Stap 1: Vereisten
Zorg dat uv is geïnstalleerd.
Stap 2: Download de tool
git clone https://github.com/cedanl/1cijferho.git
cd 1cijferho
Of download het ZIP-bestand en pak het uit.
Stap 3: Installeer dependencies
uv sync --extra frontend
Stap 4: Start de applicatie
uv run streamlit run src/main.py
De applicatie opent automatisch in je browser.
Installeren als pakket
Gebruik je eencijferho als backend-bibliotheek in een bestaande Python-omgeving? Dan heb je de Streamlit-app niet nodig en kun je het pakket direct installeren:
# pip
pip install eencijferho
# poetry
poetry add eencijferho
Voor gebruik via de CLI na installatie:
# Volledige pipeline in één stap: van ruwe DUO-bestanden naar analyse-klare CSV/Parquet
eencijferho pipeline --input data/01-input --output data/02-output
# Of stap voor stap:
# Stap 1: Lees de .txt metadata-bestanden uit en sla ze op als JSON en Excel
eencijferho extract --input data/01-input --output data/02-output
# Stap 2: Controleer of de metadata compleet is en of elk bestand een bijpassend metadata-bestand heeft
eencijferho validate --input data/01-input --output data/02-output
# Stap 3: Converteer de fixed-width bestanden naar CSV/Parquet op basis van de gevalideerde metadata
eencijferho convert --input data/01-input --output data/02-output
# Stap 3b: Decodeer outputbestanden met Dec_* opzoektabellen (draai na convert)
eencijferho decode --input data/01-input --output data/02-output
# Stap 3c: Verrijk gedecodeerde bestanden met variable_metadata labels (draai na decode)
eencijferho enrich --input data/01-input --output data/02-output
# Stap 4 (optioneel): Valideer de geconverteerde outputbestanden op kolomwaarden en DEC-codes
eencijferho validate-output --input data/01-input --output data/02-output
🎬 Demo Video
Bekijk hieronder een korte demonstratie van hoe de 1CijferHO Tool werkt:
🫂 Bijdragers
Dank aan alle mensen die hebben bijgedragen aan de ontwikkeling van de 1CijferHO Tool:
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file eencijferho-0.1.6.1.tar.gz.
File metadata
- Download URL: eencijferho-0.1.6.1.tar.gz
- Upload date:
- Size: 65.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cdedcaf9d5999d516a9273af6e17ff2b506a12e46f92cffece90d841d05b76f7
|
|
| MD5 |
6ca3ece53722c3504c775bc2df74c80f
|
|
| BLAKE2b-256 |
73c2f53895fd55a959fab67e9dedb98725a04ada9212e812c69bfc53a5b90030
|
Provenance
The following attestation bundles were made for eencijferho-0.1.6.1.tar.gz:
Publisher:
pypi-publish.yml on cedanl/1cijferho
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
eencijferho-0.1.6.1.tar.gz -
Subject digest:
cdedcaf9d5999d516a9273af6e17ff2b506a12e46f92cffece90d841d05b76f7 - Sigstore transparency entry: 1460041112
- Sigstore integration time:
-
Permalink:
cedanl/1cijferho@4907b7576abe0da49fe516ea27784750488ed7f0 -
Branch / Tag:
refs/tags/v0.1.6.1 - Owner: https://github.com/cedanl
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@4907b7576abe0da49fe516ea27784750488ed7f0 -
Trigger Event:
push
-
Statement type:
File details
Details for the file eencijferho-0.1.6.1-py3-none-any.whl.
File metadata
- Download URL: eencijferho-0.1.6.1-py3-none-any.whl
- Upload date:
- Size: 75.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
33dfe67eaa6739fef32164582225188cd3b7eca626aaff4981111d8067139944
|
|
| MD5 |
b133cef68eba85d44670162dc213596f
|
|
| BLAKE2b-256 |
c0a0e49cfc6141fcab497af93bc14afd759db911d5eb18b42308a521b8296545
|
Provenance
The following attestation bundles were made for eencijferho-0.1.6.1-py3-none-any.whl:
Publisher:
pypi-publish.yml on cedanl/1cijferho
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
eencijferho-0.1.6.1-py3-none-any.whl -
Subject digest:
33dfe67eaa6739fef32164582225188cd3b7eca626aaff4981111d8067139944 - Sigstore transparency entry: 1460041191
- Sigstore integration time:
-
Permalink:
cedanl/1cijferho@4907b7576abe0da49fe516ea27784750488ed7f0 -
Branch / Tag:
refs/tags/v0.1.6.1 - Owner: https://github.com/cedanl
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@4907b7576abe0da49fe516ea27784750488ed7f0 -
Trigger Event:
push
-
Statement type: