【问题标题】:Column headers to cell values in TableauTableau 中单元格值的列标题
【发布时间】:2015-08-29 20:50:00
【问题描述】:

我需要将 2 个数据表连接在一起以便在 Tableau Desktop 中进行分析。为简单起见,假设一张表包含个人的身高(每人列),另一张表包含同一人的体重(同样,每人列)。

我要做的是加入有关日期和人员的表格,计算体重/年龄比率并将人员分组。您能否建议如何在不更改源数据表格式的情况下做到这一点?

例如,假设高度表如下所示:

Date        John  Jill
2015/08/19  180   160
2015/08/20  181   161
2015/08/21  182   160

重量表如下所示:

Date        John  Jill
2015/08/19  10   20
2015/08/20  10   21
2015/08/21  10   20

我如何将这些表格转换成这样的表格,以便后续按日期和人员分组?

Date        Person Height Weight
2015/08/19  John   180    10
2015/08/19  Jill   160    20
2015/08/20  John   181    10
2015/08/20  Jill   161    21
2015/08/21  John   182    10
2015/08/21  Jill   160    20

【问题讨论】:

  • 您使用的是什么风格的 SQL?
  • 嗯,这是一个有趣的表格设置。每人一栏?通常你的桌子一开始就像第三张桌子一样。如果您可以分享您正在使用的数据库,我们可能会给您一个更有针对性的答案。
  • 数据来自 CSV 文件,但我可以将它们导入任何选择的类似 SQL 的存储中。不幸的是,我无法控制原始 CSV 文件的格式,并且有超过 100 列和 1M 多行。

标签: sql tableau-api


【解决方案1】:

我有 2 个解决方案给你

1) 您可以将数据导入任何 SQL 存储,然后以您想要的方式旋转数据(此处为 MySQL 示例:MySQL pivot table

2) 仅使用 Tableau(至少 9.0 版):

  • 将第一个文件连接到画面 -> 并旋转它。然后将值重命名为“名称”和“高度”

  • 连接第二个表作为第二个数据源。对它做同样的事情。

  • 然后将值从 2 个数据源拖放到视图中(如果您有复杂的数据,您可能需要调整混合选项)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-28
    • 1970-01-01
    • 2019-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多