🌐 Detecting your location…
📢 Advertisement — Configure AdSense in Appearance → Customize → AdSense Settings

Python Pandas Tutorial 2026: Datenanalyse von den Grundlagen bis zu echten Projekten

⏱️2 min read  ·  419 words
Python Pandas Tutorial 2026: Data Analysis from Basics to Real Projects

Pandasist die am häufigsten verwendete Python-Bibliothek für die Datenanalyse im Jahr 2026. Egal, ob Sie CSVs bereinigen, Verkaufsdaten aggregieren oder Datensätze für maschinelles Lernen vorbereiten, Pandas ist das richtige Werkzeug. Dieses Tutorial behandelt die wesentlichen Vorgänge, die jeder Datenprofi benötigt.

Installieren und importieren

pip install pandas numpy

import pandas as pd
import numpy as np

print(pd.__version__)  # 2.2+

DataFrames erstellen

# From dict
df = pd.DataFrame({
    'name':   ['Alice', 'Bob', 'Carol', 'Dave'],
    'age':    [25, 30, 35, 28],
    'salary': [70000, 85000, 92000, 78000],
    'dept':   ['Eng', 'Mktg', 'Eng', 'HR'],
})

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

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

print(df.head())       # First 5 rows
print(df.info())       # Column types and nulls
print(df.describe())   # Stats summary

Auswählen von Daten

# Select column
df['name']              # Series
df[['name', 'salary']]  # DataFrame

# Select rows by condition
df[df['salary'] > 80000]
df[(df['dept'] == 'Eng') & (df['age'] < 35)]

# iloc — by position
df.iloc[0]       # First row
df.iloc[1:3]     # Rows 1-2

# loc — by label
df.loc[df['dept'] == 'Eng', ['name', 'salary']]

Reinigungsdaten

# Check nulls
df.isnull().sum()

# Drop rows with any null
df.dropna(inplace=True)

# Fill nulls
df['salary'].fillna(df['salary'].mean(), inplace=True)

# Remove duplicates
df.drop_duplicates(inplace=True)

# Rename columns
df.rename(columns={'name': 'full_name'}, inplace=True)

# Change dtype
df['age'] = df['age'].astype(int)

Gruppierung und Aggregation

# Group by department, get stats
summary = df.groupby('dept').agg(
    count=('name', 'count'),
    avg_salary=('salary', 'mean'),
    max_salary=('salary', 'max'),
).reset_index()

print(summary)
#   dept  count  avg_salary  max_salary
#   Eng       2     81000.0       92000
#   HR        1     78000.0       78000
#   Mktg      1     85000.0       85000

DataFrames zusammenführen

# Two DataFrames
employees = pd.DataFrame({'emp_id': [1,2,3], 'name': ['Alice','Bob','Carol']})
salaries  = pd.DataFrame({'emp_id': [1,2,4], 'salary': [70000,85000,60000]})

# Inner join (only matching)
merged = employees.merge(salaries, on='emp_id', how='inner')

# Left join (keep all employees)
merged = employees.merge(salaries, on='emp_id', how='left')

Anwenden von Funktionen

# Apply function to column
df['salary_band'] = df['salary'].apply(
    lambda s: 'High' if s > 90000 else ('Mid' if s > 75000 else 'Low')
)

# Apply to multiple columns
df[['age','salary']].apply(lambda col: col / col.max())

# Vectorized operations (faster than apply)
df['salary_k'] = df['salary'] / 1000
df['senior'] = df['age'] >= 30

Ergebnisse exportieren

df.to_csv('output.csv', index=False)
df.to_excel('output.xlsx', index=False)
df.to_json('output.json', orient='records')

Fazit

Pandas übernimmt 95 % der realen Datenverarbeitungsaufgaben. Meistergroupby,merge, und vektorisierte Operationen und Sie werden Millionen von Zeilen in Sekunden verarbeiten. Kombinieren Sie es mit Matplotlib oder Plotly zur Visualisierung oder übergeben Sie bereinigte Daten an scikit-learn für ML.

✍️ Leave a Comment

Your email address will not be published. Required fields are marked *

🌐 Read in:🇬🇧 English🇩🇪 Deutsch🇧🇷 Português🇸🇦 العربية🇮🇳 हिन्दी🇧🇩 বাংলা