Heim >Backend-Entwicklung >Python-Tutorial >Wie kann man in Pandas mithilfe von zwei Variablen lange Daten in breite Daten umwandeln?

Wie kann man in Pandas mithilfe von zwei Variablen lange Daten in breite Daten umwandeln?

Susan Sarandon
Susan SarandonOriginal
2024-10-29 18:05:02940Durchsuche

How to Reshape Long to Wide Data in Pandas Using Two Variables?

Pandas formen Länge und Breite durch zwei Variablen um

Das Manipulieren von Daten zwischen Lang- und Breitformaten ist eine häufige Aufgabe in der Datenanalyse. In der Pandas-Bibliothek von Python werden zu diesem Zweck häufig Schmelz- und Stapel-/Entstapelungsoperationen verwendet. Es können jedoch bestimmte Szenarien auftreten, in denen ein einfacherer Ansatz gewünscht ist.

Ein solches Szenario ist die Umformung von Daten, die zwei Variablen enthalten (z. B. eine numerische Variable wie „Umsätze“ und eine kategoriale Variable wie „Produkt“) in ein breites Format . Die alleinige Verwendung der Schmelz-/Stapel-/Entstapelungsmethoden liefert möglicherweise nicht die gewünschte Ausgabe.

In diesem Beispiel haben wir „lange“ Daten mit den folgenden Spalten: Verkäufer, Größe, Produkt und Preis. Unser Ziel ist es, diese Daten in ein „breites“ Format mit Spalten für jedes einzelne Produkt, einschließlich des entsprechenden Preises, umzuwandeln.

Salesman  Height   product      price
  Knut      6        bat          5
  Knut      6        ball         1
  Knut      6        wand         3
  Steve     5        pen          2

Um dies zu erreichen, können wir die Pivot-Funktion von Pandas nutzen, die eine praktische Funktion bietet Möglichkeit, Pivot-Tabellen zu erstellen. Wir geben die Indexspalte (Salesman), die Pivotspalten (obs) und die Wertespalte (Preis) an.

Hier ist der Python-Code zum Umformen der Daten:

<code class="python">wide_df = df.pivot(index='Salesman', columns='product', values='price')</code>

Dadurch wird Folgendes erzeugt gewünschtes „breites“ Format:

Salesman  Height    product_1  price_1  product_2 price_2 product_3 price_3  
  Knut      6        bat          5       ball      1        wand      3
  Steve     5        pen          2        NA       NA        NA       NA

Das obige ist der detaillierte Inhalt vonWie kann man in Pandas mithilfe von zwei Variablen lange Daten in breite Daten umwandeln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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