1

能不能把每张直桌取平均值再取平均值?

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

在此处输入图像描述

4

1 回答 1

1

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

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

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

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

然后在您的情况下运行所有​​这些计算/变量,rangeAvg 您可以执行以下操作:

    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 访问单元格值

于 2017-09-10T02:11:21.253 回答