Python Data Science: Een Introductie

Python Data Science

Python is een van de meest populaire programmeertalen voor data science geworden. Met zijn rijke ecosysteem van bibliotheken en tools, maakt Python het mogelijk om complexe data-analyse taken uit te voeren met relatief eenvoudige code. In dit artikel maken we je wegwijs in de wereld van Python data science.

Waarom Python voor Data Science?

Python heeft verschillende voordelen die het perfect maken voor data science:

  • Eenvoudige syntax: Makkelijk te leren en te lezen
  • Rijke bibliotheek ecosystem: Veel gespecialiseerde libraries
  • Grote community: Veel ondersteuning en resources
  • Versatiliteit: Kan gebruikt worden voor web development, automation, en meer
  • Jupyter Notebooks: Interactieve ontwikkelomgeving

Essentiële Python Libraries voor Data Science

1. NumPy - Numerieke Computing

NumPy is de fundamentele library voor numerieke computing in Python. Het biedt ondersteuning voor arrays, matrices en wiskundige functies.

import numpy as np

# Creëer een array
arr = np.array([1, 2, 3, 4, 5])
print(arr)  # [1 2 3 4 5]

# Wiskundige operaties
print(arr * 2)  # [2 4 6 8 10]
print(np.mean(arr))  # 3.0

# 2D arrays (matrices)
matrix = np.array([[1, 2], [3, 4]])
print(matrix.shape)  # (2, 2)

2. Pandas - Data Manipulation

Pandas is dé library voor data manipulation en analyse. Het biedt DataFrames en Series voor het werken met gestructureerde data.

import pandas as pd

# Creëer een DataFrame
data = {
    'naam': ['Alice', 'Bob', 'Charlie'],
    'leeftijd': [25, 30, 35],
    'stad': ['Amsterdam', 'Rotterdam', 'Utrecht']
}
df = pd.DataFrame(data)
print(df)

# Data exploratie
print(df.describe())  # Statistische samenvatting
print(df['leeftijd'].mean())  # Gemiddelde leeftijd

# Data filtering
jonge_mensen = df[df['leeftijd'] < 30]
print(jonge_mensen)

3. Matplotlib - Data Visualisatie

Matplotlib is de basis library voor het maken van plots en visualisaties in Python.

import matplotlib.pyplot as plt

# Lijn plot
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
plt.plot(x, y)
plt.title('Eenvoudige Lijn Plot')
plt.xlabel('X-as')
plt.ylabel('Y-as')
plt.show()

# Histogram
data = np.random.randn(1000)
plt.hist(data, bins=30)
plt.title('Histogram')
plt.show()

Data Science Workflow

Een typische data science workflow bestaat uit de volgende stappen:

1. Data Verzameling

Data kan komen uit verschillende bronnen: CSV bestanden, databases, APIs, web scraping, etc.

# CSV bestand inlezen
df = pd.read_csv('data.csv')

# Excel bestand
df = pd.read_excel('data.xlsx')

# JSON data
df = pd.read_json('data.json')

# Database connectie
import sqlite3
conn = sqlite3.connect('database.db')
df = pd.read_sql_query('SELECT * FROM table', conn)

2. Data Cleaning

Het opschonen van data is een cruciale stap die vaak 80% van de tijd in beslag neemt.

# Ontbrekende waarden controleren
print(df.isnull().sum())

# Ontbrekende waarden verwijderen
df_clean = df.dropna()

# Ontbrekende waarden vullen
df_filled = df.fillna(df.mean())

# Duplicaten verwijderen
df_unique = df.drop_duplicates()

# Data types converteren
df['datum'] = pd.to_datetime(df['datum'])
df['prijs'] = df['prijs'].astype(float)

3. Exploratory Data Analysis (EDA)

EDA helpt je om patterns en insights in je data te ontdekken.

# Basis statistieken
print(df.describe())

# Correlatie matrix
correlation_matrix = df.corr()
print(correlation_matrix)

# Unieke waarden
print(df['categorie'].value_counts())

# Groepering
groep_stats = df.groupby('categorie').agg({
    'prijs': ['mean', 'min', 'max'],
    'aantal': 'sum'
})

4. Data Visualisatie

Visualisaties helpen bij het communiceren van je bevindingen.

# Scatter plot
plt.scatter(df['x'], df['y'])
plt.title('Scatter Plot')
plt.show()

# Box plot
df.boxplot(column='prijs', by='categorie')
plt.show()

# Heatmap van correlatie
import seaborn as sns
sns.heatmap(correlation_matrix, annot=True)
plt.show()

Praktisch Voorbeeld: Verkoop Data Analyse

Laten we een praktisch voorbeeld bekijken van verkoop data analyse:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

# Voorbeeld verkoop data
np.random.seed(42)
data = {
    'datum': pd.date_range('2024-01-01', periods=100),
    'product': np.random.choice(['A', 'B', 'C'], 100),
    'verkoop': np.random.randint(10, 100, 100),
    'prijs': np.random.uniform(10, 50, 100)
}
df = pd.DataFrame(data)

# Totale omzet berekenen
df['omzet'] = df['verkoop'] * df['prijs']

# Maandelijkse verkoop
df['maand'] = df['datum'].dt.to_period('M')
maandelijkse_verkoop = df.groupby('maand')['omzet'].sum()

# Visualisatie
maandelijkse_verkoop.plot(kind='bar')
plt.title('Maandelijkse Omzet')
plt.ylabel('Omzet (€)')
plt.show()

# Product performance
product_performance = df.groupby('product')['omzet'].sum().sort_values(ascending=False)
print("Product Performance:")
print(product_performance)

Geavanceerde Libraries

Naast de basis libraries zijn er meer gespecialiseerde tools:

  • Seaborn: Geavanceerde statistische visualisaties
  • Scikit-learn: Machine learning algoritmen
  • Plotly: Interactieve visualisaties
  • Statsmodels: Statistische modellen
  • Jupyter: Interactieve notebooks

Best Practices voor Data Science

  • Documenteer je code: Gebruik comments en markdown in notebooks
  • Reproduceerbare analyses: Stel random seeds in
  • Backup je data: Bewaar originele data ongewijzigd
  • Valideer je resultaten: Controleer altijd je analyses
  • Visualiseer eerst: Maak plots voordat je modelleert

Volgende Stappen

Om je data science vaardigheden verder te ontwikkelen, raden we aan:

  1. Oefen met echte datasets (Kaggle, UCI ML Repository)
  2. Leer machine learning met scikit-learn
  3. Experimenteer met verschillende visualisatie technieken
  4. Werk aan projecten die je portfolio kunnen versterken
  5. Doe mee aan data science communities

Conclusie

Python biedt een krachtige en toegankelijke manier om data science te beoefenen. Met libraries zoals NumPy, Pandas en Matplotlib heb je alle tools om complexe data analyses uit te voeren. Het belangrijkste is om te beginnen met eenvoudige projecten en geleidelijk je vaardigheden uit te breiden.

Interesse in het leren van data science met Python? Bekijk onze gespecialiseerde data science cursussen waar je hands-on ervaring opdoet met echte datasets.