Count of orders by customer and status

Data framesMedium10 min

Your task

Given orders with columns order_id, customer, amount, status and placed, count the orders for each customer and status pair. Return customer, status and n, sorted by customer ascending and then status ascending. Pairs that never occur do not appear.

Examples

status_counts(orders: dataframe) -> dataframe
Example 1
Inputstatus_counts(orders)
orders
order_idcustomeramountstatusplaced
1ada120.5paid2024-01-05
2bo80refunded2024-01-07
3ada45.25paid2024-02-11
4cy200paid2024-02-14
5bo15.75pending2024-03-02
6ada60paid2024-03-19
Output
customerstatusn
adapaid3
bopending1
borefunded1
cypaid1