free web page hit counter

Pandas Dataframe Sort By Column


Pandas Dataframe Sort By Column

Ach, DataFrames! Wer sich schon einmal in die wunderbare Welt der Datenanalyse mit Python gewagt hat, ist ihnen ganz bestimmt begegnet. Pandas DataFrames sind wie die Schweizer Taschenmesser der Datenmanipulation – flexibel, leistungsstark und für gefühlt jede Aufgabe gewappnet. Aber was, wenn die Daten einfach…unsortiert sind? Keine Panik! Heute widmen wir uns einer der grundlegendsten, aber unglaublich nützlichen Fähigkeiten: dem Sortieren von DataFrames nach Spalten.

Warum sortieren wir überhaupt?

Stell dir vor, du hast eine riesige Excel-Tabelle mit den Verkaufszahlen deines Lieblings-Berliner Cafés. Unsortiert ist diese Tabelle wie ein riesiges Durcheinander – schwer zu überblicken und noch schwerer, daraus sinnvolle Schlüsse zu ziehen. Sortieren bringt Ordnung ins Chaos. Ob du nun die Top-Seller identifizieren, Trends erkennen oder einfach nur die Daten übersichtlicher darstellen möchtest, das Sortieren ist der Schlüssel.

Denk an Marie Kondo und ihre Aufräummethode. Daten sortieren ist quasi das "Joy Sparking" für Data Scientists. 😉

sort_values() – Der Star der Show

Die Pandas-Funktion, die du dafür brauchst, heißt sort_values(). Sie ist dein bester Freund, wenn es darum geht, Datenrahmen nach einer oder mehreren Spalten zu ordnen. Hier ein kleines Code-Schnipsel, um den Einstieg zu erleichtern:


import pandas as pd

# Beispiel-DataFrame erstellen
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David'],
        'Alter': [25, 30, 22, 28],
        'Stadt': ['Berlin', 'Hamburg', 'München', 'Köln']}
df = pd.DataFrame(data)

# DataFrame nach der Spalte 'Alter' sortieren
df_sortiert = df.sort_values(by='Alter')

print(df_sortiert)

Praktischer Tipp: Das by-Argument in sort_values() ist dein Ticket zum Sortier-Erfolg. Hier gibst du an, nach welcher Spalte du sortieren möchtest.

Sort pandas DataFrame by Column in Python (Example) | Order Rows
Sort pandas DataFrame by Column in Python (Example) | Order Rows

Aufsteigend oder absteigend? Das ist hier die Frage!

Standardmäßig sortiert sort_values() aufsteigend. Aber was, wenn du die ältesten Kunden zuerst sehen möchtest? Kein Problem! Mit dem Argument ascending kannst du die Sortierrichtung festlegen.


# DataFrame nach 'Alter' absteigend sortieren
df_sortiert_absteigend = df.sort_values(by='Alter', ascending=False)

print(df_sortiert_absteigend)

Merke: ascending=True für aufsteigend (Standard) und ascending=False für absteigend.

Sort pandas DataFrame by Column in Python (Example) | Order Rows
Sort pandas DataFrame by Column in Python (Example) | Order Rows

Mehrere Spalten sortieren – Für die Perfektionisten unter uns

Manchmal reicht eine Spalte nicht aus. Vielleicht möchtest du zuerst nach Stadt und dann nach Alter sortieren. Auch das ist kein Problem! Gib einfach eine Liste von Spaltennamen an das by-Argument weiter.


# DataFrame zuerst nach 'Stadt' und dann nach 'Alter' sortieren
df_sortiert_mehrfach = df.sort_values(by=['Stadt', 'Alter'])

print(df_sortiert_mehrfach)

Wichtig: Die Reihenfolge der Spalten in der Liste bestimmt die Priorität der Sortierung. Die erste Spalte wird zuerst sortiert, dann die zweite, usw.

Umgang mit fehlenden Werten (NaN)

Daten sind selten perfekt. Oft stolpern wir über fehlende Werte, die in Pandas als NaN (Not a Number) dargestellt werden. Mit dem Argument na_position kannst du festlegen, ob NaN-Werte am Anfang oder Ende der sortierten Daten stehen sollen. na_position='first' oder na_position='last'. Standardmäßig ist na_position='last'.

Pandas DataFrame sort_values() | Sort by Column
Pandas DataFrame sort_values() | Sort by Column

Fun Fact: Wusstest du, dass der Begriff "NaN" ursprünglich von IEEE 754-Standard für Gleitkommazahlen stammt?

Inplace Sortierung – Vorsicht ist geboten!

Standardmäßig gibt sort_values() einen neuen, sortierten DataFrame zurück. Der ursprüngliche DataFrame bleibt unverändert. Wenn du den ursprünglichen DataFrame direkt verändern möchtest, kannst du das Argument inplace=True verwenden. Aber Vorsicht! Das ist irreversibel. Am besten machst du vorher eine Kopie des DataFrames, um auf der sicheren Seite zu sein.

Pandas Sort by Column: Crafting Data With Pro Tips & Tricks - Position
Pandas Sort by Column: Crafting Data With Pro Tips & Tricks - Position

# DataFrame direkt verändern (Achtung!)
df.sort_values(by='Alter', inplace=True)

print(df)

Denk daran: inplace=True verändert den Original-DataFrame. Sei vorsichtig damit!

Sortieren im Alltag – Mehr als nur Code

Daten sortieren ist mehr als nur eine technische Fähigkeit. Es ist eine Art, die Welt um uns herum zu organisieren und zu verstehen. Ob es die Playlist auf Spotify ist, die nach Interpret sortiert wird, oder die To-Do-Liste, die nach Priorität geordnet ist – wir sortieren ständig, um Klarheit und Struktur zu schaffen. Und genau wie im echten Leben kann das Sortieren von DataFrames uns helfen, Muster zu erkennen, fundierte Entscheidungen zu treffen und letztendlich unser Leben ein bisschen einfacher zu machen.

Also, ran an die Daten und lass das Sortieren beginnen! Du wirst überrascht sein, was du alles entdecken kannst.

How to Sort Pandas DataFrame by One Column's Values | Delft Stack How to Sort DataFrame by Column in Pandas? – Its Linux FOSS Pandas Sort by Column Values DataFrame - Spark By {Examples} Pandas >> Sort & That's it ! Code Snippets How to Sort Data in a Pandas DataFrame • datagy How To Sort Pandas DataFrame ? – Praudyog

You might also like →