Komplex JSON-bearbetning

Importera data i Java

Anthony Markham

VP Quant Developer

Komplex JSON-data

  • Nästlade objekt och arrayer
  • Blandade datatyper
  • Hantering av API:er och konfigurationsfiler 🧠

$$

Komplex JSON-data

Importera data i Java

Nästlade JSON-objekt

  • Nästling – objekt inom objekt
  • Tablesaw kan platta ut enkla fall automatiskt
  • Utplattning – omvandlar en kolumn med listor eller arrayer i varje rad till flera rader
{
  "customer": {
    "name": "John Doe",
    "address": {
      "street": "123 Main St",                            <- Nested information
      "city": "Boston",                                   <- Nested information
      "coordinates": {"lat": 42.3601, "lng": -71.0589}    <- Nested within nested information
    }
  }
}
Importera data i Java

JSON-utplattning

customer.name customer.address.street customer.address.city
John Doe 123 Main St Boston

$ $

customer.address.coordinates.lat customer.address.coordinates.lng
42.3601 -71.0589
Importera data i Java

Konfiguration av JsonReader

  • JsonReadOptions möjliggör:
    • Val av källa (fil, URL eller sträng)
    • Konfiguration av tabellnamn
    • Hantering av saknade värden
JsonReadOptions options = JsonReadOptions

.builder("complex.json")
.tableName("Products")
.missingValueIndicator("N/A")
.build();
Table data = new JsonReader().read(options);
missingValues = data.stringColumn("name").isMissing();
Importera data i Java

Sammanfogning av tabeller

  • Använd joinOn för att sammanfoga tabeller
  • En inner join behåller bara de rader som finns i båda tabellerna
Table phones = Table.read().csv("phones.csv");   // name, phone

Table diets = Table.read().csv("diets.csv"); // name, diet
// Perform the inner join on the two tables Table joined = phones.joinOn("name").inner(diets);

$$

$$

  • Det finns många andra typer av joins
Importera data i Java

Nu kör vi en övning!

Importera data i Java

Preparing Video For Download...