🐼 Einführung in Pandas#
📦 Pandas installieren#
pip install pandas
🧱 Datenstrukturen in Pandas#
import pandas as pd
s = pd.Series([10, 20, 30])
print(s)
➡️ Eine 1-dimensionale Liste mit Index
🔹 DataFrame – eine Tabelle#
daten = {
"Name": ["Anna", "Ben", "Clara"],
"Alter": [22, 23, 21]
}
df = pd.DataFrame(daten)
print(df)
➡️ Mehrere Spalten mit Beschriftung
📄 Daten aus CSV-Datei laden#
# personen.csv
Name,Alter,Stadt
Anna,22,Berlin
Ben,23,Hamburg
Clara,21,München
df = pd.read_csv("personen.csv")
print(df)
🧰 Nützliche Methoden zum Einstieg#
Methode |
Bedeutung |
---|---|
|
Erste 5 Zeilen |
|
Letzte 5 Zeilen |
|
Übersicht: Spalten, Typen, Nullwerte |
|
Statistische Kennzahlen (für Zahlen) |
|
Liste aller Spaltennamen |
|
Anzahl Zeilen und Spalten |
🔍 Zugriff auf Daten#
Spalte auswählen:
df["Name"]
Mehrere Spalten auswählen:
df[["Name", "Stadt"]]
Zeile nach Index:
df.iloc[0] # Zeile 0
df.loc[1] # Zeile mit Index 1
🔍 loc
vs. iloc
– Was ist der Unterschied?#
Pandas bietet zwei Methoden, um auf Zeilen oder Ausschnitte eines DataFrames zuzugreifen:
Zugriffsmethode |
Zugriff über… |
Was es bedeutet |
---|---|---|
|
position (Indexnummer) |
Zugriff auf Zeilen/Spalten nach Reihenfolge |
|
label (Indexwert) |
Zugriff über explizite Bezeichnung |
import pandas as pd
daten = {
"Name": ["Anna", "Ben", "Clara"],
"Alter": [22, 23, 21]
}
df = pd.DataFrame(daten, index=["a", "b", "c"])
🔸 df.iloc[0] → Zugriff auf erste Zeile (Position 0)#
print(df.iloc[0])
Name Anna
Alter 22
Name: a, dtype: object
🔸 df.loc[“a”] → Zugriff auf Zeile mit Index-Label “a”#
print(df.loc["a"])
Name Anna
Alter 22
Name: a, dtype: object
Ausdruck |
Bedeutung |
---|---|
|
Erste Zeile im DataFrame |
|
Zeile mit explizitem Label “a” |
|
Zeilen 1 bis 2 (Position 1–2) |
|
Zeilen von “b” bis “c” (inkl.) |
⚠️ Achtung: Wenn kein benannter Index gesetzt wurde (z. B. durch CSV-Datei), sind loc und iloc oft gleichwertig – aber konzeptionell verschieden.#
➕ Neue Spalte berechnen#
df["Geburtsjahr"] = 2024 - df["Alter"]
✍️ übungsaufgabe:
Lade die Datei personen.csv mit pd.read_csv()
Gib die ersten zwei Zeilen aus
Liste nur die Namen aller Personen
Wie viele Personen sind insgesamt erfasst?
Füge eine Spalte Volljährig hinzu mit True/False je nach Alter
Speichere das Ergebnis als personen_neu.csv mit df.to_csv()