Tableau 中的组计算

Group calculation in Tableau

我有一些数据,我想在其中创建一个查询,该查询将根据 tableau 中的组 ID 执行 2 个单独的计算

这是我的数据

id  total   avail
A   10  5
A   40  20
B   20  10
B   10  5
B   10  5
A   20  10
A   20  10
B   10  5
B   10  5

我希望将所有 'A' 个 ID 分组并求和(Group1) 我希望将所有 'B' id 分组并平均它们。 (第 2 组)

这就是我正在做的事情:

第一组ID:

IF [Id] = 'A' THEN 'Group1'
ELSEIF [Id] = 'B' THEN 'Group2'
ELSE 'none'
END

现在进行计算:

IF ATTR([group]) = 'Group1' THEN  SUM('A') ELSEIF
ATTR([group]) = 'Group2' THEN  SUM(['B'])/SUM(['B']) ELSE 0
END

然而,这是不正确的。我还在研究这个。 任何建议表示赞赏。

此处的一个建议 - 在 Tableau 中创建组(通过右键单击字段而不是通过计算来创建组)。

我是根据之前的采样数据给出的解决方案

使用的数据样本-

+--------------+-----+-----------+--------+------+
| total_backup | sku | available | date   | used |
+--------------+-----+-----------+--------+------+
|           10 | A   |         5 | Sep-19 |    5 |
+--------------+-----+-----------+--------+------+
|           20 | B   |         5 | Sep-19 |   15 |
+--------------+-----+-----------+--------+------+
|           30 | B   |        10 | Sep-19 |   20 |
+--------------+-----+-----------+--------+------+
|           10 | C   |         5 | Sep-19 |    5 |
+--------------+-----+-----------+--------+------+
|           10 | C   |         5 | Sep-19 |    5 |
+--------------+-----+-----------+--------+------+
|           10 | Z   |         1 | Sep-19 |    9 |
+--------------+-----+-----------+--------+------+
|           10 | Z   |         1 | Sep-19 |    9 |
+--------------+-----+-----------+--------+------+
|           20 | Y   |        10 | Sep-19 |   10 |
+--------------+-----+-----------+--------+------+
|           30 | Y   |        10 | Sep-19 |   20 |
+--------------+-----+-----------+--------+------+
|           40 | X   |        10 | Sep-19 |   30 |
+--------------+-----+-----------+--------+------+
|           40 | A   |        15 | Sep-20 |   25 |
+--------------+-----+-----------+--------+------+
|           20 | A   |        10 | Sep-20 |   10 |
+--------------+-----+-----------+--------+------+
|           10 | B   |         5 | Sep-20 |    5 |
+--------------+-----+-----------+--------+------+
|           40 | C   |        15 | Sep-20 |   25 |
+--------------+-----+-----------+--------+------+
|           50 | C   |        15 | Sep-20 |   35 |
+--------------+-----+-----------+--------+------+
|           10 | Z   |         5 | Sep-20 |    5 |
+--------------+-----+-----------+--------+------+
|           10 | Z   |         2 | Sep-20 |    8 |
+--------------+-----+-----------+--------+------+
|           20 | Y   |         5 | Sep-20 |   15 |
+--------------+-----+-----------+--------+------+
|           10 | X   |         2 | Sep-20 |    8 |
+--------------+-----+-----------+--------+------+

创建一个新的计算字段 desired new val 作为

zn(sum(if [Sku (group)]= 'sum group' then [val] end))
+
zn(avg(if [Sku (group)] = 'avg group' then [val] end))

最后一步构建您的视图

P.S。要添加工具提示,您无需保留 'total' 列。反正可以加。