Aggregating columns
You need to clean and analyze your stock data to understand high-value inventory patterns. Raw inventory data often includes irrelevant items and needs organization by category. Clean the data by filtering for expensive items (over $5), then calculate accurate totals, and organize by category. This cleaned and summarized view helps identify which departments have the most investment in premium products.
This exercise is part of the course
Cleaning Data in Java
Exercise instructions
- Find expensive items (
Unit_Price
> $5.00). - Calculate the total
Stock_Quantity
for each category. - Group results by
Category
.
Hands-on interactive exercise
Have a go at this exercise by completing this sample code.
import static tech.tablesaw.aggregate.AggregateFunctions.sum;
import tech.tablesaw.api.Table;
import tech.tablesaw.selection.Selection;
public class GroceryDataAggregation {
public static void main(String[] args) {
Table inventory = Table.read().csv("grocery_inventory.csv");
Table quantityByCategory = inventory
// Find expensive items (price > $5.00)
.where(inventory.doubleColumn("Unit_Price").____(5.0))
// Calculate total stock for each category
.____("Stock_Quantity", ____)
// Group results by product category
.____("Category");
System.out.println("Total quantity by category:");
System.out.println(quantityByCategory.first(5));
}
}