atoti.agg.sum module#

atoti.agg.sum(operand, *, scope=None)#

Return a measure equal to the sum of the passed measure across the specified scope.

Parameters
  • operand (Union[Column, Operation, MeasureDescription, MeasureConvertible]) – The measure or table column to aggregate.

  • scope (Optional[Scope]) – The scope of the aggregation. When None is specified, the natural aggregation scope is used: it contains all the data in the cube which coordinates match the ones of the currently evaluated member.

Example

>>> df = pd.DataFrame(
...     columns=["id", "Quantity", "Price", "Other"],
...     data=[
...         ("a1", 100, 12.5, 1),
...         ("a2", 10, 43, 2),
...         ("a3", 1000, 25.9, 2),
...     ],
... )
>>> table = session.read_pandas(
...     df,
...     table_name="Product",
...     keys=["id"],
... )
>>> table.head()
    Quantity  Price  Other
id
a1       100   12.5      1
a2        10   43.0      2
a3      1000   25.9      2
>>> cube = session.create_cube(table)
>>> m = cube.measures
>>> m["Quantity.SUM"] = tt.agg.sum(table["Quantity"])
>>> cube.query(m["Quantity.SUM"])
  Quantity.SUM
0        1,110
Return type

MeasureDescription