Heim > Backend-Entwicklung > Python-Tutorial > Wie kann die Funktion „melt()' von Pandas Tabellendaten von Spalten in Zeilen umstrukturieren?

Wie kann die Funktion „melt()' von Pandas Tabellendaten von Spalten in Zeilen umstrukturieren?

Susan Sarandon
Freigeben: 2024-12-30 18:49:16
Original
835 Leute haben es durchsucht

How Can Pandas' `melt()` Function Restructure Tabular Data from Columns to Rows?

Tabellendaten mit Pandas neu strukturieren: Spalten in Zeilen konvertieren

Der Umgang mit Daten, die in Spalten für verschiedene Daten oder Kategorien organisiert sind, kann umständlich sein. Pandas bietet eine leistungsstarke Lösung zum Konvertieren solcher Spalten in leicht lesbare Zeilen. Dieser Artikel befasst sich mit der besonderen Herausforderung, eine CSV-Datei mit Standortinformationen und mehreren Datumsspalten in ein gewünschtes Format umzuwandeln.

Problemstellung:

Stellen Sie sich einen Datensatz mit Informationen vor, die nach organisiert sind Ort, jeweils mit mehreren Datumsangaben als Spaltenüberschriften. Das Ziel besteht darin, die Daten in ein Format umzustrukturieren, in dem jede Zeile einen eindeutigen Ort, Namen, Datum und den entsprechenden Wert darstellt.

Pandas-Lösung:

Pandas bietet eine hocheffiziente Methode, um diese Umwandlung mithilfe seiner Schmelze zu erreichen Funktion.

Code:

df.melt(id_vars=["location", "name"],
        var_name="Date",
        value_name="Value")
Nach dem Login kopieren

Erklärung:

  • id_vars: Gibt die Spalten an, die unverändert bleiben als Zeilen.
  • var_name: Weist einen neuen Spaltennamen für die geschmolzenen Daten zu.
  • value_name: Stellt einen Namen für die Spalte bereit, die das Original enthält Werte.

Ergebnis:

Die Anwendung der Schmelzfunktion auf den bereitgestellten Datensatz liefert die gewünschte Ausgabe:

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

Diese neue Anordnung erleichtert die Analyse der Daten nach Standort, Name usw Datum.

Hinweis:

Für ältere Versionen von Pandas (0.20 oder früher) kann der folgende alternative Ansatz verwendet werden:

df2 = pd.melt(df,
                  id_vars=["location", "name"], 
                  var_name="Date",
                  value_name="Value")
df2 = df2.sort(["location", "name"])
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann die Funktion „melt()' von Pandas Tabellendaten von Spalten in Zeilen umstrukturieren?. 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