Umformen von Daten von lang zu breit in Pandas: Ein umfassender Leitfaden
Viele Datensätze werden zunächst im Langformat gespeichert, wobei jede Zeile ein darstellt Einzelne Beobachtungen und mehrere Variablen werden als Spalten aufgelistet. Es ist jedoch häufig erforderlich, die Daten in ein Breitformat umzuwandeln, bei dem jede Zeile einer eindeutigen Kombination von Werten aus zwei oder mehr Variablen entspricht.
Problem: Daten werden von lang in breit umgewandelt Das Formatieren kann in Pandas eine umständliche Aufgabe sein, insbesondere wenn die Methoden „melt/stack/unstack“ verwendet werden. Betrachten Sie beispielsweise den folgenden Langformat-Datenrahmen:
<code class="python">import pandas as pd data = pd.DataFrame({ 'Salesman': ['Knut', 'Knut', 'Knut', 'Steve'], 'Height': [6, 6, 6, 5], 'product': ['bat', 'ball', 'wand', 'pen'], 'price': [5, 1, 3, 2] })</code>
Umgestaltung in Breitformat:
Um die Daten in Breitformat umzuwandeln, können wir Chris Albons verwenden Lösung:
Langen Datenrahmen erstellen:
<code class="python">raw_data = { 'patient': [1, 1, 1, 2, 2], 'obs': [1, 2, 3, 1, 2], 'treatment': [0, 1, 0, 1, 0], 'score': [6252, 24243, 2345, 2342, 23525] } df = pd.DataFrame(raw_data, columns=['patient', 'obs', 'treatment', 'score'])</code>
Zu Breit umformen:
<code class="python">df.pivot(index='patient', columns='obs', values='score')</code>
Dadurch wird der generiert gewünschter Breitformat-Datenrahmen:
<code class="python">obs 1 2 3 patient 1 6252.0 24243.0 2345.0 2 2342.0 23525.0 NaN</code>
Das obige ist der detaillierte Inhalt vonSo formen Sie Daten in Pandas vom Lang- ins Breitformat um: Eine Schritt-für-Schritt-Anleitung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!