始める無料で始める

JSON データの分析

商品カタログを読み込んだら、マーケティングチームから価格レポートの作成を依頼されました。平均価格の把握、最も高価な商品の特定、そしてカテゴリ別の商品分布の確認が求められています。

便利なことに、JSON データを Tablesaw のテーブルに取り込んでしまえば、これまで学んだ列操作をそのまま活用できます。

JsonReaderJsonReadOptionsTable クラスはすでにインポート済みです。products.json ファイルには namepricecategory の各列が含まれています。

この演習はコースの一部です

Java でのデータインポート

コースを見る

演習の手順

  • JSON の読み込みを完成させて、商品テーブルを読み込みましょう。
  • 列のメソッドを使って平均価格を計算しましょう。
  • データセット内の最高価格を求めましょう。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

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());
    }
}
コードを編集して実行