Bắt đầu ngayBắt đầu miễn phí

Phân tích dữ liệu JSON

Khi danh mục sản phẩm đã được tải, nhóm marketing yêu cầu một báo cáo định giá. Họ muốn biết giá trung bình, xác định sản phẩm đắt nhất và xem cách sản phẩm được phân bổ theo từng danh mục.

Tin vui: khi dữ liệu JSON đã nằm trong một bảng Tablesaw, bạn có thể dùng lại các thao tác trên cột mà bạn đã biết.

Các lớp JsonReader, JsonReadOptions, và Table đã được import, và tệp products.json chứa các cột name, price, và category.

Bài tập này là một phần của khóa học

Nhập dữ liệu trong Java

Xem khóa học

Hướng dẫn bài tập

  • Hoàn tất việc đọc JSON để tải bảng products.
  • Tính giá trung bình bằng một phương thức của cột.
  • Tìm giá tối đa trong bộ dữ liệu.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

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());
    }
}
Chỉnh sửa và Chạy Mã