【问题标题】:Tableau: calculated field after data is reshapedTableau:数据重塑后的计算字段
【发布时间】:2015-09-28 18:35:26
【问题描述】:

我正试图围绕如何在 Tableau 中创建一个计算字段,该字段是在对源数据进行透视后计算的。我的源数据是“长”的,即标准化,看起来像这样:

+---------+---------+-------+
| Company | Measure | Value |
+---------+---------+-------+
| A       | Sales   | 100   |
+---------+---------+-------+
| A       | Exp     | -10   |
+---------+---------+-------+
| B       | Sales   | 200   |
+---------+---------+-------+
| B       | Exp     | -30   |
+---------+---------+-------+

(实际上每家公司都会有两个以上的记录,但这是简化的)

我想知道的是Net 计算为Sales + (2 * Exp)

+---------+---------+-------+-------+
| Company | Sales   | Exp   | Net   |
+---------+---------+-------+-------+
| A       | 100     | -10   | 80    |
+---------+---------+-------+-------+
| B       | 200     | -30   | 140   |
+---------+---------+-------+-------+

只需将Company 作为我的行,Measure 作为我的列,然后sum(Value),我就可以得到以下信息:

+---------+---------+-------+
| Company | Sales   | Exp   | 
+---------+---------+-------+
| A       | 100     | -10   |
+---------+---------+-------+
| B       | 200     | -30   | 
+---------+---------+-------+

但是如何根据旋转Measure 的结果计算额外的列?

【问题讨论】:

    标签: tableau-api


    【解决方案1】:

    这能满足你的需要吗?

    关键是为ExpSales 创建计算字段,如下所示:

    Exp = if [Measure] = "Exp" then [Value] end

    Sales = if [Measure] = "Sales" then [Value] end

    这些成为您可以用作列的度量。

    【讨论】:

    • 我喜欢它......但我缺少一些东西。当我尝试这个时,我得到一个错误:“引用未定义的字段 [Sales]”,因为 Sales 不是源数据中的字段。您做了什么魔法来帮助 Tableau “看到”Sales 列,它实际上是 Measure 字段的一个支点。
    • 很抱歉,我想我误解了您的问题,并且您正在连接到已经重塑的数据。如果您要连接到它标准化,那么这应该可以解决问题。 dl.dropboxusercontent.com/u/60455118/…
    • 我的数据是“长”的,我在 Tableau 内部进行了整形。所以我认为你没有误解。感谢您提供示例工作簿。它是用什么版本创建的?我在 8.2 上并收到一个我不够新的错误。
    • 它是用 9.0 创建的。您可以在此处下载版本以打开文件。 tableau.com/esdalt 否则,使用以下内容重新创建您的 Sales 和 Exp 公式:if [Measure] = "Exp" then [Value] endif [Measure] = "Sales" then [Value] end。然后得到网络是Sum([_Sales]) + sum([_Exp] * 2)
    • 哦。是的,这是有道理的。我能够在 8.x 中重新创建。使用IF 语句是有意义的。我没想过那样做。
    猜你喜欢
    • 2020-07-09
    • 2017-11-09
    • 2015-10-19
    • 2016-09-14
    • 2021-10-15
    • 2016-01-18
    • 1970-01-01
    • 2017-03-11
    相关资源
    最近更新 更多