Heim > Backend-Entwicklung > Python-Tutorial > Wie gruppiere ich DataFrame-Zeilen und erstelle Wertelisten mit Pandas?

Wie gruppiere ich DataFrame-Zeilen und erstelle Wertelisten mit Pandas?

Mary-Kate Olsen
Freigeben: 2024-12-17 20:54:10
Original
883 Leute haben es durchsucht

How to Group DataFrame Rows and Create Lists of Values Using Pandas?

So wandeln Sie Datenrahmenzeilen mit Pandas Groupby in gruppierte Listen um

Problem:

Gegeben Bei einem DataFrame mit mehreren Spalten besteht das Ziel darin, Zeilen basierend auf einer bestimmten Spalte (z. B. der ersten Spalte) zu gruppieren und Werte zu sammeln aus einer anderen Spalte (z. B. der zweiten Spalte) in Listen innerhalb jeder Gruppe. Zum Beispiel:

Original DataFrame:

a b
A 1
A 2
B 5
B 5
B 4
C 6

Gewünschtes Ergebnis:

a new
A [1, 2]
B [5, 5, 4]
C [6]

Lösung:

Um dies zu erreichen Ergebnis: Die Groupby-Funktion von Pandas kann zusammen mit der Apply()-Methode verwendet werden, um jede Gruppe in eine umzuwandeln Liste.

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({'a': ['A', 'A', 'B', 'B', 'B', 'C'], 'b': [1, 2, 5, 5, 4, 6]})

# Group by the "a" column and create lists of "b" values
grouped_list = df.groupby('a')['b'].apply(list)

# Reset the index to obtain a DataFrame
df1 = grouped_list.reset_index(name='new')
Nach dem Login kopieren

Erklärung:

  • groupby('a'): Gruppiert den DataFrame nach der Spalte „a“. .
  • apply(list): Wendet die list()-Funktion auf jede Gruppe an, Konvertieren der „b“-Werte in Listen.
  • reset_index(name='new'): Setzt den Index zurück und weist den gruppierten Listen den neuen Spaltennamen „new“ zu.

Der resultierende DataFrame, df1, enthält die gewünschten gruppierten Listen:

   a        new
0  A     [1, 2]
1  B  [5, 5, 4]
2  C        [6]
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie gruppiere ich DataFrame-Zeilen und erstelle Wertelisten mit Pandas?. 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