Aan de slagGa gratis aan de slag

Afdelingsanalyse

Je eerste analyse maakte indruk op het HR-team! Nu willen ze dieper ingaan op inzichten per afdeling. Het managementteam overweegt budgetten voor volgend jaar en wil begrijpen hoe salarissen over verschillende afdelingen zijn verdeeld. Ze zijn vooral geïnteresseerd in afdelingen met zowel een hoog gemiddeld salaris als een goed aantal senior medewerkers (leeftijd 40+).

De Table, Selection en aggregatiefuncties (mean, count, max) zijn al voor je geïmporteerd.

Deze oefening maakt deel uit van de cursus

Data importeren in Java

Cursus bekijken

Oefeninstructies

  • Vat "Salary" samen met mean, count en max.
  • Filter op medewerkers van 40+.
  • Sorteer op "Department", daarna "Salary" aflopend.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

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