Hoofdstuk 2 — Installatie en omgeving: Python, pip, virtualenv en conda
Let op: De tekst is in het Nederlands; shell‑commando’s en codeblokken zijn in het Engels.
Doel van dit hoofdstuk:
- Een werkende Python‑installatie opzetten op Windows/macOS/Linux.
- Pakketbeheer begrijpen met pip/venv en een alternatief met conda/mamba.
- Beste praktijken voor geïsoleerde omgevingen en reproduceerbare dependencies.
Aanbevolen voorkennis: Hoofdstuk 1.
2.1 Python installeren
Aanbevolen opties:
- Gebruik de officiële installer (python.org) of je OS‑pakketbeheerder (Homebrew, apt, winget).
- Alternatief: conda/mamba‑distributie (Anaconda/Miniforge/Mambaforge) met gebundelde wetenschappelijke pakketten.
Controleer versie:
python --version
python3 --version
2.2 pip en virtualenv/venv
Gebruik per project een geïsoleerde omgeving.
# Maak een venv (Python 3.8+)
python -m venv .venv
# Activeer
# Windows (PowerShell):
.\.venv\Scripts\Activate.ps1
# macOS/Linux (bash/zsh):
source .venv/bin/activate
# Upgrade pip en installeer pakketten
python -m pip install --upgrade pip
pip install numpy pandas matplotlib jupyterlab scikit-learn
# Exporteer requirements
pip freeze > requirements.txt
Deactiveer met deactivate.
2.3 conda/mamba omgevingen (alternatief)
Conda biedt binair beheerde pakketten, handig voor complexe dependencies.
# Installeer mamba (snel) via Mambaforge/Miniforge
mamba --version
# Maak en activeer een omgeving
mamba create -n datasci python=3.11 numpy pandas matplotlib jupyterlab scikit-learn
mamba activate datasci
# Exporteer omgeving
mamba env export --no-builds > environment.yml
Tips:
- Gebruik bij voorkeur één systeem (pip/venv of conda/mamba) per project om mixen te vermijden.
- pin versies in requirements/environment voor reproduceerbaarheid.
2.4 JupyterLab en kernels
Installeer JupyterLab en koppel je omgeving als kernel.
pip install jupyterlab ipykernel
python -m ipykernel install --user --name datasci-venv --display-name "Python (datasci-venv)"
# Start JupyterLab
jupyter lab
2.5 Mapstructuur van een data‑project (vooruitblik)
Een pragmatische structuur (voorbeeld):
project/
data/ # ruwe/brondata (niet committen als groot/gevoelig)
notebooks/ # verkenning en rapportage
src/ # herbruikbare functies/modules
reports/ # figuren en resultaten
tests/ # (optioneel) unit tests
requirements.txt of environment.yml
README.md
2.6 Troubleshooting
- Meerdere Python’s op systeem? Controleer
which python/where python. - Proxy/firewall‑issues met pip? Stel
PIP_INDEX_URLenPIP_TRUSTED_HOSTin indien nodig. - Compileerproblemen? Overweeg conda/mamba voor geprecompileerde wheels.
2.7 Samenvatting
Je hebt nu opties om Python te installeren, geïsoleerde omgevingen te maken met pip/venv of conda/mamba, en JupyterLab te starten. In Hoofdstuk 3 richten we de dagelijkse workflow in met Jupyter en reproducibility‑patronen.