Heim > Backend-Entwicklung > Python-Tutorial > Wie kann die Methode „.explode()' von Pandas listenbasierte Spalten in separate Zeilen umwandeln?

Wie kann die Methode „.explode()' von Pandas listenbasierte Spalten in separate Zeilen umwandeln?

Linda Hamilton
Freigeben: 2024-11-29 20:25:11
Original
963 Leute haben es durchsucht

How Can Pandas' `.explode()` Method Transform List-Based Columns into Separate Rows?

Ausnutzung der .explode()-Methode von Pandas zum Entpacken von Listen in Zeilen

In Pandas kann der Umgang mit DataFrames, die Listenspalten enthalten, eine Herausforderung sein, wenn Sie jede einzelne haben möchten Listenelement, das als separate Zeile dargestellt wird. Hier kommt die .explode()-Methode ins Spiel.

Pandas ≥ 0,25

Für Pandas-Versionen 0.25 und höher ist der Game-Changer die .explode( ) Methode. Es ermöglicht Ihnen, eine listenartige Spalte in separate Zeilen zu zerlegen und sie so von ihrer langen Form in eine breite Form umzuwandeln.

import pandas as pd

# Sample DataFrame
df = pd.DataFrame({
    'trial_num': [1, 2, 3, 1, 2, 3],
    'subject': [1, 1, 1, 2, 2, 2],
    'samples': [list(np.random.randn(3).round(2)) for i in range(6)]
})

# Explode using .explode()
exploded_df = df.explode('samples')

# Reset index to be monotonically increasing (optional)
exploded_df = exploded_df.reset_index(drop=True)

print(exploded_df)

# Output:
#    subject  trial_num  sample
# 0        1          1    0.57
# 1        1          1   -0.83
# 2        1          1    1.44
# 3        1          2   -0.01
# 4        1          2    1.13
# 5        1          2    0.36
# 6        1          3    1.18
# 7        2          1   -0.08
# 8        2          1   -4.22
# 9        2          1   -2.05
# 10       2          2    0.72
# 11       2          2    0.79
# 12       2          2    0.53
# 13       2          3    0.4
# 14       2          3   -0.32
# 15       2          3   -0.13
Nach dem Login kopieren

Beachten Sie, dass .explode() jeweils nur für eine einzelne Spalte arbeitet. Bei Spalten, die gemischte Typen enthalten (z. B. Listen und Skalare), verhält sich .explode() sinnvoll und behält leere Listen und NaNs bei.

Das obige ist der detaillierte Inhalt vonWie kann die Methode „.explode()' von Pandas listenbasierte Spalten in separate Zeilen umwandeln?. 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