I am new to python. Currently, I have a dataset that contains more than 40 columns needed to be grouped and aggregated. I was wondering if python has a function similar to cube() function in SQL. If not, how can I have the expected output? Really appreciate it if someone could answer for me. Thanks!
Below Example that I simplified to 2 columns only (Country & Attribute A):
| CustomerID | Country |Attribute A|Sales| No.of product| No. of transaction|
| ---------- | --------|-----------|-----|--------------|-------------------|
| 1 | US |A |20 |2 |2 |
| 2 | US |B |25 |3 |3 |
|3 |CA |A |100 |10 |10 |
|4 |CA |B |50 |5 |5 |
|5 |UK |A |40 |4 |4 |
Expected Output:
| Country|Attribute A|Sum of Sales|Total no. of product| Total no. of transaction| Total no. of customer|
|--------|-----------|------------|--------------------|-------------------------|----------------------|
|US |(null) |45 |5 |5 |2 |
|CA |(null) |150 |15 |155 |2 |
|UK |(null) |40 |4 |4 |1 |
|(null) |A |160 |16 |16 |3 |
|(null) |B |75 |8 |8 |2 |
|US |A |20 |2 |2 |1 |
|US |B |25 |3 |3 |1 |
|CA |A |100 |10 |10 |1 |
|CA |B |50 |5 |5 |1 |
|UK |A |40 |4 |4 |1 |