ichildren

SysCube.ichildren(fix, dimensions, submit=True, clear_agg_nodes=False)

维度自动汇总

根据维度表达式确定的数据范围、以及需要汇总的维度和成员。 按顺序汇总所有目标节点。汇总依据仅为目标节点的子节点, 如果子节点无数据,则不触发汇总,不会递归向下寻找叶子节点。

参数
  • fix (str) – 维度表达式,确定汇总涉及的数据范围

  • dimensions (Dict[str, Union[str, Iterable[str]]]) – 需要汇总的维度

  • submit (bool) – 是否将汇总结果直接入库

  • clear_agg_nodes (bool) – 是否在保存前先删除汇总节点的数据

提示

入参 dimension 需符合格式:

维度名称 -> 维度成员(可多个),表示按顺序汇总到指定的单个或多个成员

重要

  • 对于 fix 中没有出现的维度,会以 Base(#root,0) 自动补全表达式。

  • 最终保存的数据将只包含本次参与汇总的父节点。

示例

fix = 'Year{2021;2022}->Entiy{Base(TotalEntity,0)}'
cube = SysCube('example')
# 先汇总Account至CostA, CostB,再汇总Version维度至Version1
cube.ichildren(fix, {
    'Account': ['CostA', 'CostB'],
    'Version': 'Version1'
})
返回类型

Union[DataFrame, Any]

返回

  • 如果不提交汇总结果,将返回汇总结果,无汇总数据返回空 DataFrame

  • 如果提交汇总结果,将返回数据保存结果,无汇总数据返回 None

参见

如果需要递归汇总,请使用 idescendant