获得所有桌子的平均值 - Qlikview

时间:2017-09-08 10:42:55

标签: qlikview qliksense set-analysis

是否可以获得每张直桌的平均值并再次获得平均值?

示例:平均值(1.99%+ 3.66%+ 3.49%+ 2.26%+ 2.14%+ 2.61%+ 5.54%+ 3.11%+ 2.92%+ 1.06%)

enter image description here

1 个答案:

答案 0 :(得分:1)

这取决于表格表达式的复杂程度,但一般的想法是通过aggr函数“模拟”直线/数据透视表总计:

例如,对于维度为Week且表达式为“sum(val)”的表,您可以在变量中执行以下操作:

avg(aggr( sum(val), Week))

如果表中有多个维度,则只需将它们添加到aggr碎片(即:avg(aggr( sum(val), Week,Group))

然后在rangeAvg中运行所有这些calc /变量 在你的情况下,你可以做类似的事情:

    rangeAvg(
    aggr(Sum({$<[A]={$(=vVariable1)}, [Group]={'TableA'}>} [Duration])/Sum({$<[A]={'*'}, [Group]={'TableA'}>} [Duration]),Week),
    aggr(Sum({$<[A]={$(=vVariable1)}, [Group]={'TableA'}>} [Duration])/Sum({$<[A]={'*'}, [Group]={'TableA'}>} [Duration]),MonthYear),
    aggr(Sum({$<[A]={$(=vVariable1)}, [Group]={'TableA'}>} [Duration])/Sum({$<[A]={'*'}, [Group]={'TableA'}>} [Duration]),Year)
)

旁注:我不会进入vb宏,因为它只与qlikview相关,不能在qliksense中使用,但一般来说可以通过vb访问单元格值