Basi dei dati JSON con Tablesaw

Importare dati in Java

Anthony Markham

VP Quant Developer

Introduzione a JSON

  • JSON: JavaScript Object Notation
    • Formato leggero di scambio dati
    • Formato standard per API web
    • Struttura a coppie chiave-valore

immagine_json.jpg

Importare dati in Java

Dati tabulari

  • Righe e colonne fisse
  • Tabellare: Tipi di dati uniformi
| Nome  | Età | Città   |
|-------|-----|---------|
| Alice | 30  | Boston  |
| Bob   | 25  | Seattle |

JSON

  • Strutture nidificate flessibili
  • Tipi di dati misti e gerarchie
[
  {"name": "Alice", 
      "age": 30, 
      "address": {"city": "Boston", 
                  "state": "MA"}},
  {"name": "Bob", 
      "age": 25, 
      "address": {"city": "Seattle", 
                  "state": "WA"}}
]
Importare dati in Java

Lettura JSON

  • Usa solo per file JSON semplici
// Metodo semplice per leggere un file JSON
Table products = Table.read().file("products.json");

$$

import tech.tablesaw.io.json.JsonReader;
import tech.tablesaw.io.json.JsonReadOptions;
  • Offre configurazioni aggiuntive
// Lettura di un file JSON usando JsonReadOptions
JsonReadOptions options = JsonReadOptions.builder("products.json").build();

Table products = new JsonReader().read(options);
Importare dati in Java

Accesso ai dati JSON

  • Metodi Tablesaw familiari funzionano
// Accedi alle colonne dai dati JSON
StringColumn names = table.stringColumn("name");
DoubleColumn prices = table.doubleColumn("price");

// Esegui calcoli double avgPrice = prices.mean(); String mostExpensive = table .where(prices.isEqualTo(prices.max())) .stringColumn("name").get(0);
Importare dati in Java

Migliori pratiche JSON - validazione

  • Valida la struttura JSON prima di elaborare
// Validazione e gestione errori
try {
    JsonReadOptions options = JsonReadOptions.builder("data.json").build();
    Table data = new JsonReader().read(options);
    if (data.rowCount() > 0) {
        // Elabora dati
    }
} catch (Exception e) {
    System.err.println("Errore lettura JSON: " + e.getMessage());
}
if (data.rowCount() == 100) {
    System.out.println("La tabella ha esattamente 100 righe - elaborazione dati");
}
Importare dati in Java

Migliori pratiche JSON - valori mancanti

  • Gestisci valori mancanti/nulli
// Rimuovi righe con valori mancanti
data = data.dropRowsWithMissingValues();
  • Adatta i tipi di dati alle esigenze di analisi
// Converti colonna intera in double per calcoli
data = data.replaceColumn("price", data.intColumn("price").asDoubleColumn());
Importare dati in Java

Ayo berlatih!

Importare dati in Java

Preparing Video For Download...