Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich verschachtelte Wörterbuchspalten in Pandas-DataFrames mit ungleicher Länge effizient aufteilen?

Wie kann ich verschachtelte Wörterbuchspalten in Pandas-DataFrames mit ungleicher Länge effizient aufteilen?

Mary-Kate Olsen
Freigeben: 2024-12-28 06:27:15
Original
858 Leute haben es durchsucht

How Can I Efficiently Split Nested Dictionary Columns in Pandas DataFrames with Unequal Lengths?

Spalten verschachtelter Wörterbücher in Pandas mit json_normalize aufteilen

In Python kann es bei der Arbeit mit Pandas DataFrames vorkommen, dass die Die letzte Spalte enthält verschachtelte Wörterbücher. Das Extrahieren dieser Werte in separate Spalten kann schwierig sein, wenn die Wörterbücher nicht die gleiche Länge haben.

In diesem Artikel wird eine Lösung mit der Funktion json_normalize() vorgestellt. Hier ist ein Beispiel:

import pandas as pd

# Sample DataFrame with a column of nested dictionaries
df = pd.DataFrame({
    'Station ID': ['8809', '8810', '8811', '8812', '8813'],
    'Pollutant Levels': [
        {'a': '46', 'b': '3', 'c': '12'},
        {'a': '36', 'b': '5', 'c': '8'},
        {'b': '2', 'c': '7'},
        {'c': '11'},
        {'a': '82', 'c': '15'},
    ]
})

# Extract columns using json_normalize
df2 = pd.json_normalize(df['Pollutant Levels'])

# Concatenate with original DataFrame
df = pd.concat([df, df2], axis=1)

# Drop the original 'Pollutant Levels' column
df = df.drop(columns=['Pollutant Levels'])

print(df)
Nach dem Login kopieren

Ausgabe:

   Station ID  a  b  c
0       8809  46  3  12
1       8810  36  5  8
2       8811  NaN  2  7
3       8812  NaN  NaN  11
4       8813  82  NaN  15
Nach dem Login kopieren

Dieser Ansatz extrahiert die verschachtelten Wörterbuchwerte effektiv in separate Spalten und löst so das Problem unterschiedlicher Wörterbuchlängen. Die Funktion json_normalize() konvertiert die verschachtelten JSON-Daten effizient in ein Tabellenformat, sodass keine komplexen Apply-Funktionen erforderlich sind.

Das obige ist der detaillierte Inhalt vonWie kann ich verschachtelte Wörterbuchspalten in Pandas-DataFrames mit ungleicher Länge effizient aufteilen?. 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