>>> df = pd.DataFrame(
... columns=["Product", "Price", "Quantity"],
... data=[
... ("phone", 559.99, 2),
... ("headset", 79.99, 4),
... ("watch", 249.99, 3),
... ],
... )
>>> table = session.read_pandas(df, keys={"Product"}, table_name="Example")
>>> cube = session.create_cube(table)
>>> h, l, m = cube.hierarchies, cube.levels, cube.measures
>>> m["contributors.COUNT"].formatter
'INT[#,###]'
>>> m["contributors.COUNT"].formatter = "INT[count: #,###]"
>>> m["contributors.COUNT"].formatter
'INT[count: #,###]'
>>> m["Price.SUM"].formatter
'DOUBLE[#,###.00]'
>>> m["Price.SUM"].formatter = "DOUBLE[$#,##0.00]" # Add $ symbol
>>> m["Ratio of sales"] = m["Price.SUM"] / tt.total(
... m["Price.SUM"], h["Product"]
... )
>>> m["Ratio of sales"].formatter
'DOUBLE[#,###.00]'
>>> m["Ratio of sales"].formatter = "DOUBLE[0.00%]" # Percentage
>>> m["Turnover in dollars"] = tt.agg.sum(
... table["Price"] * table["Quantity"],
... )
>>> m["Turnover in dollars"].formatter
'DOUBLE[#,###.00]'
>>> m["Turnover in dollars"].formatter = "DOUBLE[#,###]" # Without decimals
>>> cube.query(
... m["contributors.COUNT"],
... m["Price.SUM"],
... m["Ratio of sales"],
... m["Turnover in dollars"],
... levels=[l["Product"]],
... )
contributors.COUNT Price.SUM Ratio of sales Turnover in dollars
Product
headset count: 1 $79.99 8.99% 320
phone count: 1 $559.99 62.92% 1,120
watch count: 1 $249.99 28.09% 750