In diesem Artikel untersuchen wir, wie man JSON-Datenstrukturen mit verschachtelten Objekten mithilfe von Pandas effektiv manipuliert.
Betrachten Sie die folgende JSON-Struktur:
<code class="json">{ "number": "", "date": "01.10.2016", "name": "R 3932", "locations": [ { "depTimeDiffMin": "0", "name": "Spital am Pyhrn Bahnhof", "arrTime": "", "depTime": "06:32", "platform": "2", "stationIdx": "0", "arrTimeDiffMin": "", "track": "R 3932" }, { "depTimeDiffMin": "0", "name": "Windischgarsten Bahnhof", "arrTime": "06:37", "depTime": "06:40", "platform": "2", "stationIdx": "1", "arrTimeDiffMin": "1", "track": "" }, { "depTimeDiffMin": "", "name": "Linz/Donau Hbf", "arrTime": "08:24", "depTime": "", "platform": "1A-B", "stationIdx": "22", "arrTimeDiffMin": "1", "track": "" } ] }</code>
Die json_normalize-Funktion von Pandas ermöglicht es uns, verschachtelte Objekte in ein Tabellenformat zu reduzieren :
<code class="python">import json with open('myJson.json') as data_file: data = json.load(data_file) df = pd.json_normalize(data, 'locations', ['date', 'number', 'name'], record_prefix='locations_')</code>
Dies führt zu einem DataFrame mit Spalten für jeden Schlüssel im verschachtelten „locations“-Objekt.
Wenn eine Reduzierung nicht gewünscht ist, Sie können die Gruppierungs- und Verkettungsfunktionen von Pandas nutzen:
<code class="python">df = pd.read_json("myJson.json") df.locations = pd.DataFrame(df.locations.values.tolist())['name'] df = df.groupby(['date', 'name', 'number'])['locations'].apply(','.join).reset_index()</code>
Dieser Ansatz verkettet die „Standorte“-Werte als durch Kommas getrennte Zeichenfolge für jede eindeutige Kombination aus „Datum“, „Name“ und „Nummer“. .
Durch die Verwendung der json_normalize- und Gruppierungs-/Verkettungsfunktionen von Pandas können wir verschachtelte JSON-Strukturen effektiv verarbeiten und so Daten in einem Tabellenformat extrahieren und bearbeiten.
Das obige ist der detaillierte Inhalt vonWie gehen Pandas mit verschachtelten JSON-Objekten um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!