Heim > Backend-Entwicklung > Python-Tutorial > Wie teilt man eine Pandas-Wörterbuchspalte effizient in separate Spalten auf?

Wie teilt man eine Pandas-Wörterbuchspalte effizient in separate Spalten auf?

Susan Sarandon
Freigeben: 2024-12-26 14:30:13
Original
120 Leute haben es durchsucht

How to Efficiently Split a Pandas Column of Dictionaries into Separate Columns?

So teilen Sie eine Pandas-Spalte mit Wörterbüchern in separate Spalten auf

In einem Pandas-DataFrame ist es möglich, auf eine Spalte mit Wörterbüchern zu stoßen. Um die Werte aus diesen Wörterbüchern in einzelne Spalten zu extrahieren, ist die Funktion json_normalize eine effiziente Lösung.

Der folgende Code demonstriert den Prozess:

import pandas as pd

df = pd.DataFrame()  # Your existing DataFrame with the dictionary column
df2 = pd.json_normalize(df['Pollutant Levels'])
Nach dem Login kopieren

Dadurch wird ein neuer DataFrame df2 mit erstellt Werte aus der Wörterbuchspalte „Schadstoffgehalt“ sind in separate Spalten aufgeteilt.

Umgang mit unterschiedlichen Längen Listen:

Die bereitgestellte Anforderung legt fest, dass alle Listen in den Wörterbüchern die gleichen drei Schlüssel ('a', 'b', 'c') enthalten, aber nicht unbedingt die gleiche Länge. Um dies zu berücksichtigen, verwendet der Code json_normalize, das automatisch die Längen variabler Listen verarbeitet, indem fehlende Werte mit NaN aufgefüllt werden.

Unicode-Problemlösung:

Wenn die Wörterbuchwerte vorhanden sind im Unicode-Format (u{'a': '1', 'b': '2', 'c': '3'} statt {u'a': '1', u'b': '2', u'c': '3'}), funktioniert der Code weiterhin korrekt. json_normalize kann beide Arten von Unicode-Zeichenfolgen verarbeiten.

Beispiel mit Unicode:

Für Daten, die aus einer PostgreSQL-Datenbank im Unicode-Format importiert wurden:

import pandas as pd

# Convert the Unicode strings to strings
df['Pollutant Levels'] = df['Pollutant Levels'].astype('unicode')

# Use json_normalize to split the dictionary column
df2 = pd.json_normalize(df['Pollutant Levels'])
Nach dem Login kopieren

Dadurch werden die Unicode-Strings in reguläre Strings konvertiert und dann die Wörterbuchspalte in separate Spalten aufgeteilt.

Das obige ist der detaillierte Inhalt vonWie teilt man eine Pandas-Wörterbuchspalte effizient in separate Spalten auf?. 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