Dokumente und Daten

Verschachteltes JSON in CSV umwandeln: So glätten Sie Daten, ohne ihre Bedeutung zu verlieren

Erfahren Sie, wie Sie Zeilenknoten auswählen, Objekte abflachen und Regeln für Arrays festlegen. Sehen Sie sich konzeptionelle Beispiele an, vergleichen Sie mögliche Strukturen und prüfen Sie die CSV-Vorschau.

Apification
Beispiel für ein verschachteltes JSON-Objekt, das in CSV-Spalten umgewandelt wurde

Was Sie beim Umwandeln von verschachteltem JSON in CSV entscheiden müssen

JSON kann verschachtelte Objekte und Arrays enthalten; CSV organisiert Informationen in Zeilen und Spalten. Beim Übergang von einer Struktur zur anderen müssen Sie entscheiden, welches Element eine Zeile darstellt und welche Felder zu Spalten werden. Bei der Umwandlung geht es nicht nur darum, die Dateiendung zu ändern: Sie müssen auch festlegen, wie Daten dargestellt werden, die nicht direkt in eine flache Tabelle passen.

Mit dem Tool von Datablist können Sie Zeilenknoten auswählen, Objekte zum Abflachen bestimmen, Regeln für Arrays festlegen und eine Vorschau der CSV-Datei ansehen, bevor Sie sie herunterladen. Diese Funktionen bieten Möglichkeiten, die Umwandlung einzurichten; das konkrete Ergebnis hängt jedoch von Ihren Entscheidungen ab. Gehen Sie nicht ungeprüft davon aus, wie die Spalten heißen oder einzelne Felder dargestellt werden, sondern sehen Sie sich die Einstellungen und die Vorschau an.

Betrachten Sie zunächst die Struktur des JSON und suchen Sie das Objekt oder die Gruppe von Objekten, die die gewünschten Datensätze enthält. Ermitteln Sie anschließend, welche Informationen Sie in der fertigen Tabelle benötigen. Eine Datei kann Felder enthalten, die für den Zweck des Exports nicht erforderlich sind. Zu entscheiden, welche Felder erhalten bleiben, gehört zur praktischen Gestaltung und ist keine automatische Eigenschaft des CSV-Formats.

  • Legen Sie fest, welcher JSON-Knoten eine Zeile darstellt.
  • Wählen Sie aus, welche verschachtelten Objekte Sie abflachen möchten.
  • Legen Sie eine Regel für Arrays fest und prüfen Sie die Vorschau.
Was Sie beim Umwandeln von verschachteltem JSON in CSV entscheiden müssen

Beispiel: Ein verschachteltes Objekt abflachen

Betrachten Sie dieses hypothetische Beispiel: Jede Bestellung stellt eine Zeile dar, und die Felder des Objekts „kunde“ werden zu Spalten. Die Eingabe enthält nur eine Bestellung, damit klar erkennbar ist, was das Abflachen eines Objekts bedeutet: Felder innerhalb eines anderen Objekts auszuwählen und als Spalten in der Tabelle darzustellen.

JSON-Eingabe: {"bestellung_id": "P-104", "kunde": {"name": "Lucía", "stadt": "Sevilla"}, "gesamt": 48.5}

Eine mögliche CSV-Darstellung für diese Entscheidung lautet: bestellung_id,kunde_name,kunde_stadt,gesamt P-104,Lucía,Sevilla,48.5

In diesem Beispiel zeigen kunde_name und kunde_stadt, welche Felder aus dem Objekt kunde in die Tabelle übernommen wurden. Die Namen dienen nur der Veranschaulichung: Sie sind weder eine Konvention, die Datablist laut den genannten Quellen verwendet, noch eine Garantie dafür, wie ein anderes Tool Spalten benennt. Wenn Sie bestimmte Überschriften benötigen, prüfen Sie sie in der Vorschau.

Die Entscheidung beeinflusst, welche Informationen sich in der Tabelle leicht abfragen lassen. Wenn Sie die benötigten Felder abflachen, können Sie sie als separate Spalten sehen. Wählen Sie eine andere Struktur oder lassen Sie ein Objekt unabgeflacht, entspricht die Darstellung möglicherweise nicht der erwarteten Tabelle. Vergleichen Sie deshalb die Überschriften und Werte in der Vorschau mit den ursprünglichen Feldern, statt anzunehmen, dass das Beispiel das Ergebnis Ihrer Umwandlung vorgibt.

Beispiel: Ein verschachteltes Objekt abflachen

Arrays verstehen: zwei mögliche Darstellungen

Für Arrays ist eine Umwandlungsregel erforderlich. Datablist gibt an, dass der Konverter das Festlegen von Regeln für Arrays ermöglicht. Die verfügbaren Belege erläutern jedoch nicht, wie konkrete Fälle behandelt werden, etwa Arrays unterschiedlicher Länge oder leere Arrays. Das folgende Beispiel ist ein konzeptionelles Modell, das zeigt, warum die tabellarische Form festgelegt werden sollte; es beschreibt weder Optionen noch garantierte Ergebnisse von Datablist.

Angenommen, eine Bestellung enthält zwei Tags: „dringend“ und „Geschenk“. Eine beispielhafte Darstellung könnte positionsbezogene Spalten wie tag_1 und tag_2 vorsehen und die Bestellung in einer Zeile belassen. Eine andere konzeptionelle Darstellung könnte jedem Tag eine eigene Zeile zuweisen und die Bestellnummer wiederholen: P-104 mit „dringend“ in einer Zeile und P-104 mit „Geschenk“ in einer anderen. Keine dieser Darstellungen behauptet, dass der Konverter solche Strukturen automatisch erzeugt.

Diese Alternativen haben sichtbare Folgen. Eine Zeile mit positionsbezogenen Spalten hält die Bestelldaten im Beispiel zusammen; wenn ein anderer Datensatz jedoch mehr Elemente enthält, als durch die dargestellten Positionen abgedeckt sind, müsste festgelegt werden, wie diese untergebracht werden. Eine Zeile pro Element zeigt im Beispiel jeden Tag einzeln, wiederholt aber die Bestellnummer. Das sind Folgen der Gestaltung dieser hypothetischen Tabellen, keine Beschreibung des Verhaltens eines bestimmten Tools.

Gehen Sie beim Einrichten einer tatsächlichen Umwandlung nicht davon aus, dass die verfügbare Regel eine dieser Formen oder eine andere erzeugt. Prüfen Sie die Vorschau anhand eines Beispiels mit einem Array und vergleichen Sie sie mit dem JSON-Ausgangsdokument. Wenn die Arrays in Ihren Daten unterschiedlich aufgebaut sind, beziehen Sie mehr als einen Fall in die Prüfung ein. Die genannten Belege dokumentieren nicht, wie leere Arrays, fehlende Felder oder Nullwerte behandelt werden. Prüfen Sie diese Fälle daher mit der gewählten Konfiguration.

  • Betrachten Sie die Darstellungen im Beispiel als mögliche Schemata, nicht als Datablist zugeschriebene Ergebnisse.
  • Prüfen Sie die Vorschau anhand repräsentativer Arrays aus Ihren Daten.
  • Überprüfen Sie Fälle, die in den verfügbaren Informationen nicht beschrieben sind, gesondert.

Genannte Methoden zum Umwandeln von JSON in CSV mit Python

Bright Data nennt die Bibliotheken csv, json und pandas als Methoden, um JSON-Daten mit Python in CSV umzuwandeln, und weist darauf hin, dass jede Methode Vorteile hat. Die hier verfügbaren Belege erläutern diese Unterschiede nicht und empfehlen keine konkrete Implementierung. Sie reichen daher nicht aus, um zu behaupten, dass eine Bibliothek für eine bestimmte Struktur am besten geeignet ist.

Beschreiben Sie zunächst die Dateistruktur und das gewünschte Tabellenergebnis, wenn Sie eine Methode auswählen: Welches Element wird eine Zeile, welche Felder sollen zu Spalten werden und welche Entscheidung haben Sie für Arrays getroffen? Prüfen Sie anschließend in der Dokumentation der Methode deren Optionen und Verhalten bei dieser Struktur.

Gehen Sie nicht davon aus, dass eine Regel eines visuellen Konverters für eine Python-Bibliothek gleichermaßen gilt oder dass die drei genannten Namen identische Ergebnisse bedeuten. Wenn Sie Methoden vergleichen, verwenden Sie dasselbe JSON-Testbeispiel und bewerten Sie die erzeugten Tabellen nach denselben Kriterien. So können Sie erkennen, ob Überschriften und Zeilen der gewünschten Struktur entsprechen, ohne Fähigkeiten zu unterstellen, die durch die verfügbaren Quellen nicht bestätigt werden.

Umwandlung in der Vorschau prüfen

Eine Vorschau gehört zu den beschriebenen Funktionen des Datablist-Konverters. Verwenden Sie sie, um vor dem Herunterladen der CSV-Datei zu prüfen, ob die Auswahl der Zeilenknoten, das Abflachen von Objekten und die Regeln für Arrays eine Tabelle ergeben, die Ihren Erwartungen entspricht. Die Prüfung ersetzt keine klare Definition der Struktur, sondern ermöglicht es Ihnen, das sichtbare Ergebnis mit Ihren Entscheidungen abzugleichen.

Eine hilfreiche Prüfung besteht darin, einen oder mehrere Datensätze vom JSON bis in die Vorschau nachzuverfolgen. Suchen Sie den ursprünglichen Wert, prüfen Sie, in welcher Zeile und Spalte er erscheint, und kontrollieren Sie, ob die Überschriften die Felder benennen, die Sie aufnehmen wollten. Prüfen Sie bei einem verschachtelten Objekt die abgeflachten Felder; bei einem Array sehen Sie sich die tatsächlich angezeigte Darstellung an, statt sie aus einem anderen Beispiel abzuleiten.

Wenn das Ergebnis nicht die erwartete Struktur bewahrt, überprüfen Sie Ihre ursprünglichen Entscheidungen: Vielleicht haben Sie einen anderen Zeilenknoten ausgewählt, das betreffende Objekt nicht zum Abflachen ausgewählt oder eine Array-Regel festgelegt, die nicht die gewünschte Form ergibt. Gehen Sie bei fehlenden Feldern oder Nullwerten nicht davon aus, wie das Tool sie behandelt: Die verfügbaren Belege dokumentieren dieses Verhalten nicht. Prüfen Sie diese Fälle mit der ausgewählten Konfiguration, bevor Sie die Datei verwenden.

Um das Original und die Arbeitsergebnisse geordnet aufzubewahren, bietet Apification Cloud einen versionierten Arbeitsbereich und ermöglicht es, den Verlauf von Elementen einzusehen. Das kann dabei helfen, Versionen von Arbeitsdateien wiederzufinden; es validiert die Umwandlung nicht und ersetzt auch nicht die Prüfung des CSV-Inhalts.

  • Prüfen Sie die Überschriften und verfolgen Sie einige Werte vom JSON bis in die Vorschau.
  • Beziehen Sie verschachtelte Objekte und Arrays ein, die für die tatsächliche Struktur Ihrer Daten repräsentativ sind.
  • Wenn das Ergebnis nicht Ihren Erwartungen entspricht, prüfen Sie vor dem Herunterladen die Auswahl und die Regel.
  • Sorgen Sie dafür, dass das ursprüngliche JSON und die Arbeits-CSV auffindbar bleiben.

Herangezogene technische Quellen

Datablist, „JSON-zu-CSV-Konverter“: https://www.datablist.com/es/tools/json-to-csv. Die verfügbaren Belege beschreiben die Auswahl von Zeilenknoten, das Abflachen von Objekten, Regeln für Arrays und die Vorschau vor dem Herunterladen.

Bright Data, „Wie wandelt man JSON-Daten mit Python in CSV um?“: https://brightdata.es/faqs/json/convert-json-data-to-csv. Die verfügbaren Belege nennen die Bibliotheken csv, json und pandas.

Die Tabellenbeispiele in diesem Leitfaden dienen der Veranschaulichung. Die genannten Quellen dokumentieren weder eine bestimmte Konvention zur Benennung von Spalten noch die genaue Behandlung von Arrays unterschiedlicher Länge, leeren Arrays, fehlenden Feldern oder Nullwerten.

Häufige Fragen

Was sollte ich entscheiden, bevor ich verschachteltes JSON in CSV umwandle?

Legen Sie fest, welcher Knoten eine Zeile darstellt, welche Objekte Sie abflachen möchten und welche Regel Sie für Arrays verwenden. Datablist bietet Optionen für diese Entscheidungen und eine Vorschau der CSV-Datei.

Wie wird ein verschachteltes Objekt in CSV dargestellt?

Sie können festlegen, dass seine Felder in Spalten abgeflacht werden. In einer beispielhaften Darstellung können etwa die Felder kunde.name und kunde.stadt als kunde_name und kunde_stadt erscheinen.

Wie sollte ich Arrays unterschiedlicher Länge oder Nullwerte behandeln?

Die verfügbaren technischen Informationen geben nicht an, wie die einzelnen Konverter solche Fälle behandeln. Prüfen Sie die Konfiguration und die Vorschau anhand von Daten, die die entsprechenden Fälle aus Ihrer Datei enthalten.

Welche Python-Bibliotheken werden für die Umwandlung von JSON in CSV genannt?

Bright Data nennt csv, json und pandas. Sehen Sie in der Dokumentation der gewählten Methode nach, welche Optionen sie bietet und wie sie mit Ihrer Datenstruktur umgeht.

Quellen und weitere Informationen

Für diesen Artikel herangezogene Dokumentation.

Apification entdecken

Ähnliche Artikel

Zurück zum Blog