JSON-Daten mit Tablesaw

Daten in Java importieren

Anthony Markham

VP Quant Developer

Einführung in JSON

  • JSON: JavaScript Object Notation
    • Leichtgewichtiges Datenaustauschformat
    • Standardformat für Web-APIs
    • Schlüssel-Wert-Paar-Struktur

json_image.jpg

Daten in Java importieren

Tabellendaten

  • Feste Zeilen und Spalten
  • Tabellarisch: Einheitliche Datentypen
| Name  | Alter | Stadt   |
|-------|-------|---------|
| Alice | 30    | Boston  |
| Bob   | 25    | Seattle |

JSON

  • Flexible, verschachtelte Strukturen
  • Gemischte Datentypen und Hierarchien
[
  {"name": "Alice", 
      "age": 30, 
      "address": {"city": "Boston", 
                  "state": "MA"}},
  {"name": "Bob", 
      "age": 25, 
      "address": {"city": "Seattle", 
                  "state": "WA"}}
]
Daten in Java importieren

JSON lesen

  • Nur für einfache JSON-Dateien verwenden
// Einfache Methode zum Lesen einer JSON-Datei
Table products = Table.read().file("products.json");

$$

import tech.tablesaw.io.json.JsonReader;
import tech.tablesaw.io.json.JsonReadOptions;
  • Bietet zusätzliche Konfiguration
// Lesen einer JSON-Datei mit JsonReadOptions
JsonReadOptions options = JsonReadOptions.builder("products.json").build();

Table products = new JsonReader().read(options);
Daten in Java importieren

Zugriff auf JSON-Daten

  • Bekannte Tablesaw-Methoden funktionieren
// Zugriff auf Spalten aus JSON-Daten
StringColumn names = table.stringColumn("name");
DoubleColumn prices = table.doubleColumn("price");

// Berechnungen durchführen double avgPrice = prices.mean(); String mostExpensive = table .where(prices.isEqualTo(prices.max())) .stringColumn("name").get(0);
Daten in Java importieren

Beste JSON-Praktiken - Validierung

  • JSON-Struktur vor Verarbeitung validieren
// Validierung und Fehlerbehandlung
try {
    JsonReadOptions options = JsonReadOptions.builder("data.json").build();
    Table data = new JsonReader().read(options);
    if (data.rowCount() > 0) {
        // Daten verarbeiten
    }
} catch (Exception e) {
    System.err.println("Fehler beim Lesen von JSON: " + e.getMessage());
}
if (data.rowCount() == 100) {
    System.out.println("Tabelle hat genau 100 Zeilen - Daten werden verarbeitet");
}
Daten in Java importieren

Beste JSON-Praktiken - Fehlende Werte

  • Fehlende/null Werte behandeln
// Zeilen mit fehlenden Werten entfernen
data = data.dropRowsWithMissingValues();
  • Datentypen an Analysebedarf anpassen
// Integer-Spalte in Double umwandeln für Berechnungen
data = data.replaceColumn("price", data.intColumn("price").asDoubleColumn());
Daten in Java importieren

Lass uns üben!

Daten in Java importieren

Preparing Video For Download...