Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich einen Pandas-DataFrame mit „pd.melt()' vom Breit- ins Langformat umformen?

Wie kann ich einen Pandas-DataFrame mit „pd.melt()' vom Breit- ins Langformat umformen?

Susan Sarandon
Freigeben: 2024-12-22 14:43:14
Original
697 Leute haben es durchsucht

How Can I Reshape a Pandas DataFrame from Wide to Long Format Using `pd.melt()`?

Spalten in Zeilen mit Pandas konvertieren

Diese Frage befasst sich mit der Notwendigkeit, einen CSV-Datensatz, in dem datumsbezogene Informationen über mehrere Spalten verteilt sind, in ein Format umzuwandeln, in dem jedes Datum hat eine eigene Zeile. Um diese Transformation zu erreichen, verwendet der Benutzer die pd.melt-Funktion.

Die ursprüngliche CSV-Struktur ähnelt:

location    name    Jan-2010    Feb-2010    March-2010
A           "test"  12          20          30
B           "foo"   18          20          25
Nach dem Login kopieren

Das gewünschte Ergebnis ist eine Tabelle mit den Spalten Ort, Name, Datum und Wert:

location    name    Date        Value
A           "test"  Jan-2010    12       
A           "test"  Feb-2010    20
A           "test"  March-2010  30
B           "foo"   Jan-2010    18       
B           "foo"   Feb-2010    20
B           "foo"   March-2010  25
Nach dem Login kopieren

Die pd.melt-Funktion bietet die Möglichkeit, die Daten neu zu strukturieren. Es werden mehrere Argumente benötigt:

  • id_vars: Die Spalten, die beim Zusammenführen der Tabelle unverändert bleiben. In diesem Fall Ort und Name.
  • var_name: Der Name der neuen Spalte, die die ursprünglichen Spaltennamen enthält (wie sie vor dem Schmelzen waren). In diesem Fall Datum.
  • Wertname: Der Name der Spalte, die die Werte aus den ursprünglichen Datenspalten enthält. In diesem Fall Wert.
df.melt(id_vars=["location", "name"],
        var_name="Date",
        value_name="Value")
Nach dem Login kopieren

Der resultierende DataFrame entspricht der gewünschten Ausgabe, wobei jeder Monat nun eine separate Zeile einnimmt.

Das obige ist der detaillierte Inhalt vonWie kann ich einen Pandas-DataFrame mit „pd.melt()' vom Breit- ins Langformat umformen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage