Complete Python Data Analyse Tool

Alles wat je nodig hebt voor data analyse met Python - van installatie tot geavanceerde visualisaties

Code Generator
Installatie Handleiding
Bibliotheken
Data Cleaning
Visualisatie

Genereer Python code voor data analyse met Pandas. Selecteer de gewenste bewerkingen en de tool produceert direct de bijbehorende Python code die je kunt kopiëren naar je project.

Filters

Sorteren

Python Installatiehandleiding

Stap 1: Python Installeren

Download de nieuwste versie van Python van de officiële website:

https://www.python.org/downloads/

Windows:

  1. Download het .exe bestand
  2. Run de installer
  3. Vink "Add Python to PATH" aan
  4. Klik op "Install Now"

MacOS:

  1. Download het .pkg bestand
  2. Open het gedownloade bestand
  3. Volg de installatie-instructies
  4. Controleer met python3 --version in Terminal

Stap 2: IDE Keuze

Kies een ontwikkelomgeving (IDE) voor Python:

Voor beginners:

  • IDLE (meegeleverd met Python)
  • Thonny (eenvoudige IDE)
  • VS Code met Python extensie

Voor gevorderden:

  • PyCharm (Professionele IDE)
  • Jupyter Notebook (interactieve omgeving)
  • Spyder (voor data wetenschap)

Stap 3: Bibliotheken Installeren

Installeer benodigde bibliotheken met pip (Python package manager):

# Basis data analyse bibliotheken
pip install pandas numpy matplotlib seaborn

# Voor geavanceerde data analyse
pip install scipy scikit-learn statsmodels

# Voor interactieve notebooks
pip install jupyter

# Controleer geïnstalleerde versies
pip list

Probleemoplossing:

  • Werkt pip niet? Probeer pip3 of python -m pip
  • Toestemmingsfouten? Voeg --user toe aan het commando
  • Virtual environments aanmaken wordt aangeraden voor projecten

Stap 4: Eerste Script Uitvoeren

Maak een nieuw bestand aan met extensie .py en voer uit:

In IDLE:

  1. Open IDLE
  2. Klik op File > New File
  3. Typ je code
  4. Sla op als script.py
  5. Klik op Run > Run Module

In Terminal/CMD:

  1. Maak een bestand script.py met een teksteditor
  2. Open Terminal/CMD
  3. Navigeer naar de map: cd pad/naar/map
  4. Voer uit: python script.py

Voorbeeld script:

# Eerste Python script
import pandas as pd

# Maak een eenvoudige DataFrame
data = {'Naam': ['Jan', 'Piet', 'Klaas'], 'Leeftijd': [25, 30, 35]}
df = pd.DataFrame(data)

# Toon de data
print(df)

Essentiële Python Bibliotheken voor Data Analyse

Core Pandas

De belangrijkste bibliotheek voor data manipulatie en analyse. Biedt DataFrame structuur voor efficiënt werken met gelabelde en relationele data.

Installatie: pip install pandas

Belangrijkste functies:

  • Data inlezen van CSV, Excel, SQL, etc.
  • Data cleaning en transformatie
  • Groeperen en aggregatie
  • Tijdreeksanalyse

Core NumPy

Fundamentele bibliotheek voor wetenschappelijk rekenen. Biedt ondersteuning voor grote, multidimensionale arrays en matrices.

Installatie: pip install numpy

Belangrijkste functies:

  • Efficiënte array-operaties
  • Wiskundige functies
  • Lineaire algebra
  • Random number generation

Viz Matplotlib

Primaire bibliotheek voor data visualisatie in Python. Biedt veel flexibiliteit voor het maken van statische, geanimeerde en interactieve visualisaties.

Installatie: pip install matplotlib

Belangrijkste functies:

  • Lijndiagrammen, staafdiagrammen, histogrammen
  • Scatter plots, box plots, pie charts
  • Aanpasbare stijlen en kleuren
  • Export naar verschillende formaten

Viz Seaborn

High-level interface voor aantrekkelijke statistische visualisaties, gebouwd op Matplotlib.

Installatie: pip install seaborn

Belangrijkste functies:

  • Statistische relaties visualiseren
  • Geïntegreerd met Pandas DataFrames
  • Automatische regressie en density plots
  • Aantrekkelijke standaardstijlen

Advanced Scikit-learn

Machine learning bibliotheek voor Python. Eenvoudige en efficiënte tools voor data mining en data analyse.

Installatie: pip install scikit-learn

Belangrijkste functies:

  • Classificatie, regressie, clustering
  • Dimensionaliteitsreductie
  • Modelselectie en evaluatie
  • Voorbereiding van data

Aanbevolen leerpad voor beginners:

  1. Begin met Pandas voor data manipulatie
  2. Leer Matplotlib voor basis visualisaties
  3. Voeg Seaborn toe voor geavanceerdere plots
  4. Verken NumPy voor numerieke operaties
  5. Ga verder met Scikit-learn voor machine learning

Data Cleaning Technieken

1. Omgaan met ontbrekende waarden

Ontbrekende data kan analyses verstoren. Hier zijn manieren om ermee om te gaan:

Verwijderen:

# Verwijder rijen met ontbrekende waarden
df.dropna(inplace=True)

# Verwijder kolommen met te veel ontbrekende waarden
df.dropna(axis=1, thresh=0.7*len(df), inplace=True)

Invullen:

# Vul ontbrekende waarden in met gemiddelde
df.fillna(df.mean(), inplace=True)

# Voor categorische data: vul in met modus
df['categorie'].fillna(df['categorie'].mode()[0], inplace=True)

# Forward fill (neemt vorige waarde)
df.fillna(method='ffill', inplace=True)

2. Dubbele data verwijderen

# Toon aantal dubbele rijen
print(f"Aantal dubbele rijen: {df.duplicated().sum()}")

# Verwijder dubbele rijen
df.drop_duplicates(inplace=True)

# Dubbele rijen gebaseerd op specifieke kolommen
df.drop_duplicates(subset=['kolom1', 'kolom2'], keep='first', inplace=True)

3. Datatype conversie

# Converteer naar numeriek
df['kolom'] = pd.to_numeric(df['kolom'], errors='coerce')

# Converteer naar datum
df['datum'] = pd.to_datetime(df['datum'], format='%d-%m-%Y')

# Converteer naar categorisch
df['categorie'] = df['categorie'].astype('category')

# Converteer boolean strings
df['boolean'] = df['boolean'].map({'ja': True, 'nee': False})

4. Uitschieters behandelen

Identificeren:

# Met IQR methode
Q1 = df['kolom'].quantile(0.25)
Q3 = df['kolom'].quantile(0.75)
IQR = Q3 - Q1
lower_bound = Q1 - 1.5 * IQR
upper_bound = Q3 + 1.5 * IQR

# Toon uitschieters
outs = df[(df['kolom'] < lower_bound) | (df['kolom'] > upper_bound)]
print(f"Aantal uitschieters: {len(outs)}")

Behandelen:

# Verwijder uitschieters
df = df[(df['kolom'] >= lower_bound) & (df['kolom'] <= upper_bound)]

# Vervang door grenswaarden
df['kolom'] = df['kolom'].clip(lower_bound, upper_bound)

# Of vervang door mediaan
median = df['kolom'].median()
df.loc[df['kolom'] > upper_bound, 'kolom'] = median
df.loc[df['kolom'] < lower_bound, 'kolom'] = median

5. String operaties

# Verwijder whitespace
df['tekst'] = df['tekst'].str.strip()

# Converteer naar lowercase
df['tekst'] = df['tekst'].str.lower()

# Vervang substrings
df['tekst'] = df['tekst'].str.replace('oud', 'nieuw')

# Extract delen van strings
df['postcode'] = df['adres'].str.extract(r'(\d{4}\s?[A-Z]{2})')

# Splits strings
df[['voornaam', 'achternaam']] = df['naam'].str.split(' ', 1, expand=True)

Data Cleaning Checklist

  1. Inspecteer ontbrekende waarden (.isna().sum())
  2. Controleer op duplicaten (.duplicated().sum())
  3. Verifieer datatypes (.dtypes)
  4. Identificeer uitschieters (describe(), boxplots)
  5. Normaliseer strings (hoofdletters, spaties)
  6. Valideer bereiken en domeinen van waarden
  7. Documenteer alle transformaties

Data Visualisatie Technieken

1. Basis Visualisaties met Pandas

# Staafdiagram
df['kolom'].value_counts().plot.bar(figsize=(10,6), title='Frequentie per categorie')

# Lijndiagram voor tijdreeksen
df.plot.line(x='datum', y='waarde', figsize=(12,6))

# Histogram voor distributies
df['numeriek'].plot.hist(bins=30, alpha=0.7)

# Boxplot voor uitschieters
df.boxplot(column='numeriek', by='categorie', figsize=(10,6))

# Scatter plot voor relaties
df.plot.scatter(x='kolom1', y='kolom2', alpha=0.5)

2. Geavanceerde Visualisaties met Seaborn

import seaborn as sns
import matplotlib.pyplot as plt

# Relatie tussen variabelen
sns.pairplot(df, hue='categorie')

# Boxplot met seaborn
sns.boxplot(x='categorie', y='waarde', data=df)
plt.xticks(rotation=45)

# Heatmap voor correlaties
corr = df.corr()
sns.heatmap(corr, annot=True, cmap='coolwarm')

# Violin plot voor distributie
sns.violinplot(x='groep', y='waarde', data=df, split=True)

# Regressie plot
sns.lmplot(x='x', y='y', data=df, hue='categorie', ci=None)

3. Aanpassen van Plots

# Maak een figuur met subplots
fig, ax = plt.subplots(2, 2, figsize=(12,10))

# Eerste subplot
df['kolom1'].plot.hist(ax=ax[0,0], bins=20, color='skyblue')
ax[0,0].set_title('Distributie van kolom1')

# Tweede subplot
df.plot.scatter(x='kolom1', y='kolom2', ax=ax[0,1], alpha=0.6)
ax[0,1].set_title('Relatie tussen kolom1 en kolom2')

# Algemene titel
fig.suptitle('Data Analyse Visualisaties', fontsize=16)

# Layout optimaliseren
plt.tight_layout()

# Opslaan als bestand
plt.savefig('visualisaties.png', dpi=300, bbox_inches='tight')

4. Interactieve Visualisaties

Voor interactieve visualisaties in Jupyter Notebooks:

# Plotly installeren
pip install plotly

# Voorbeeld interactieve plot
import plotly.express as px

fig = px.scatter(df, x='kolom1', y='kolom2', color='categorie',
                 size='grootte', hover_data=['extra_info'],
                 title='Interactieve Scatter Plot')
fig.show()

# Interactief dashboard met widgets
from ipywidgets import interact

@interact
def plot_by_category(categorie=df['categorie'].unique()):
    subset = df[df['categorie'] == categorie]
    subset.plot.scatter(x='x', y='y', title=f'Data voor {categorie}')

Visualisatie Best Practices

  • Kies het juiste plottype voor je data en vraagstelling
  • Houd het simpel - vermijd overmatige decoratie
  • Gebruik betekenisvolle labels en titels
  • Kies kleuren zorgvuldig (kleurenblind-vriendelijk)
  • Zorg voor voldoende contrast en leesbaarheid
  • Overweeg het verhaal dat je wilt vertellen
  • Test je visualisaties op verschillende apparaten