Phân tích theo phòng ban
Phân tích ban đầu của bạn đã gây ấn tượng với đội ngũ HR! Giờ họ muốn đi sâu hơn vào các thông tin theo phòng ban. Ban lãnh đạo đang xem xét phân bổ ngân sách cho năm tới và cần hiểu cách mức lương được phân bổ giữa các phòng ban khác nhau. Họ đặc biệt quan tâm đến những phòng ban vừa có mức lương trung bình cao vừa có số lượng nhân viên cấp cao đáng kể (tuổi từ 40+).
Table, Selection và các hàm tổng hợp (mean, count, max) đã được nhập sẵn cho bạn.
Bài tập này là một phần của khóa học
Nhập dữ liệu trong Java
Hướng dẫn bài tập
- Tóm tắt
"Salary"vớimean,countvàmax. - Lọc nhân viên từ 40 tuổi trở lên.
- Sắp xếp theo
"Department", rồi"Salary"giảm dần.
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 DepartmentAnalysis {
public static void main(String[] args) {
try {
Table highEarners = Table.read().csv("top_10_earners.csv");
// Summarize Salary with mean, count, and max
Table salarySummary = highEarners.____("____",
mean, count, max).apply();
System.out.println("Salary Summary:");
System.out.println(salarySummary);
// Filter for employees aged 40+
Table seniorEmployees = highEarners.where(
highEarners.intColumn("____").isGreaterThanOrEqualTo(____));
// Sort by Department, then Salary descending
Table sortedSeniors = seniorEmployees.____("Department")
.sortDescendingOn("Salary");
System.out.println("\nSenior Employees (40+) by Department:");
System.out.println(sortedSeniors);
} catch (Exception e) {
System.err.println("Error reading CSV files: " + e.getMessage());
}
}
}