Analisi dei dati JSON
Con il catalogo prodotti caricato, il team marketing ha richiesto un report sui prezzi. Vogliono conoscere il prezzo medio, identificare il prodotto più costoso e vedere come sono distribuiti i prodotti per categoria.
La buona notizia: una volta che i dati JSON sono in una tabella Tablesaw, puoi usare le stesse operazioni sulle colonne che già conosci.
Le classi JsonReader, JsonReadOptions e Table sono state importate e il file products.json contiene le colonne name, price e category.
Questo esercizio fa parte del corso
Importare dati in Java
Istruzioni dell'esercizio
- Completa la lettura del JSON per caricare la tabella dei prodotti.
- Calcola il prezzo medio usando un metodo della colonna.
- Trova il prezzo massimo nell'insieme di dati.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
public class JSONAnalysis {
public static void main(String[] args) {
// Complete the JSON read
JsonReadOptions options = JsonReadOptions.builder("products.json").build();
Table products = new JsonReader().____(options);
// Calculate average price
double avgPrice = products.doubleColumn("price").____();
// Find maximum price
DoubleColumn priceCol = products.doubleColumn("price");
double maxPrice = ____.____();
String mostExpensive = products
.where(priceCol.isEqualTo(maxPrice))
.stringColumn("name").get(0);
Table categoryCount = products.countBy("category");
System.out.println("Product Analytics Report:");
System.out.println("========================");
System.out.printf("Average Price: $%.2f%n", avgPrice);
System.out.println("Most Expensive: " + mostExpensive + " ($" + maxPrice + ")");
System.out.println("\nCategory Distribution:");
System.out.println(categoryCount.print());
}
}