>>> from datetime import date
>>> df = pd.DataFrame(
... columns=["Date", "Quantity"],
... data=[
... (date(2019, 7, 1), 15),
... (date(2019, 7, 2), 20),
... (date(2019, 6, 1), 25),
... (date(2019, 6, 2), 15),
... (date(2018, 7, 1), 5),
... (date(2018, 7, 2), 10),
... (date(2018, 6, 1), 15),
... (date(2018, 6, 2), 5),
... ],
... )
>>> table = session.read_pandas(df, table_name="Cumulative")
>>> cube = session.create_cube(table)
>>> h, l, m = cube.hierarchies, cube.levels, cube.measures
>>> cube.create_date_hierarchy("Date", column=table["Date"])
>>> h["Date"] = {**h["Date"], "Date": table["Date"]}
>>> m["Quantity.SUM"] = tt.agg.sum(table["Quantity"])
>>> m["Cumulative quantity"] = tt.agg.sum(
... m["Quantity.SUM"], scope=tt.CumulativeScope(l["Day"])
... )
>>> cube.query(
... m["Quantity.SUM"],
... m["Cumulative quantity"],
... levels=[l["Day"]],
... include_totals=True,
... )
Quantity.SUM Cumulative quantity
Year Month Day
Total 110 110
2018 35 35
6 20 20
1 15 15
2 5 20
7 15 35
1 5 25
2 10 35
2019 75 110
6 40 75
1 25 60
2 15 75
7 35 110
1 15 90
2 20 110