Aan de slagGa gratis aan de slag

Analyse van JSON-gegevens

Met de productcatalogus geladen heeft het marketingteam een prijsrapport aangevraagd. Ze willen de gemiddelde prijs weten, het duurste product identificeren en zien hoe producten over categorieën zijn verdeeld.

Goed nieuws: zodra JSON-gegevens in een Tablesaw-tabel staan, kun je dezelfde kolombewerkingen gebruiken die je al kent.

De klassen JsonReader, JsonReadOptions en Table zijn geïmporteerd, en het bestand products.json bevat de kolommen name, price en category.

Deze oefening maakt deel uit van de cursus

Data importeren in Java

Cursus bekijken

Oefeninstructies

  • Maak het inlezen van JSON af om de productentabel te laden.
  • Bereken de gemiddelde prijs met een kolommethode.
  • Zoek de maximale prijs in de gegevensset.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

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());
    }
}
Code bewerken en uitvoeren