05
DataFrame
DataFrame GroupBy & Aggregation
Learn to group and aggregate data for analysis. Similar to SQL GROUP BY operations. This example uses deepbox/dataframe and focuses on DataFrame, groupBy, agg.
Deepbox Modules Used
deepbox/dataframeWhat You Will Learn
- Use deepbox/dataframe for DataFrame, groupBy, agg.
- Learn to group and aggregate data for analysis. Similar to SQL GROUP BY operations.
Source Files
index.ts
1/**2 * Example 05: DataFrame GroupBy & Aggregation3 *4 * Learn to group and aggregate data for analysis.5 * Similar to SQL GROUP BY operations.6 */78import { DataFrame } from "deepbox/dataframe";910console.log("=== DataFrame GroupBy & Aggregation ===\n");1112// Create sample sales data13const sales = new DataFrame({14 product: ["Laptop", "Mouse", "Laptop", "Keyboard", "Mouse", "Laptop", "Keyboard", "Mouse"],15 region: ["North", "North", "South", "North", "South", "North", "South", "South"],16 quantity: [5, 20, 3, 15, 25, 4, 10, 30],17 revenue: [5000, 400, 3000, 450, 500, 4000, 300, 600],18});1920// Display the raw data21console.log("Sales Data:");22console.log(`${sales.toString()}\n`);2324// Group by a single column and aggregate25console.log("\nGroup by single column");26// Group by product and calculate total sales27const byProduct = sales.groupBy("product");28const productStats = byProduct.agg({29 quantity: "sum",30 revenue: "sum",31});3233console.log("Sales by Product:");34console.log(`${productStats.toString()}\n`);3536// Group by region37// Calculate average sales by region38const byRegion = sales.groupBy("region");39const regionStats = byRegion.agg({40 quantity: "mean",41 revenue: "mean",42});4344console.log("Average Sales by Region:");45console.log(`${regionStats.toString()}\n`);4647// Perform multiple aggregations at once48console.log("\nMultiple aggregations");49// Calculate sum, mean, and count for each product50const detailedStats = byProduct.agg({51 quantity: "sum",52 revenue: "mean",53});5455console.log("Detailed Product Statistics:");56console.log(`${detailedStats.toString()}\n`);5758console.log("✓ GroupBy operations complete!");59Console Output
$ npx tsx 05-dataframe-groupby/index.ts
Console output showing grouped sales data with sum and mean aggregations by product and region