优阅达 | Tableau微课堂(7):如何进行数据融合(上)

published: 2021-07-20

如何进行数据融合(上)

假设您有两家零售连锁店,办公之城和咖啡连锁,您在excel中采集办公之城的分析数据,在Access数据库中采集咖啡连锁的分析数据,为了跨两个零售连锁店执行分析,如何将这两个离散的数据源合在一起?

在Tableau中数据混合可用来将多个数据源的数据合并到一个视图中,在更深入的探讨之前,先停下来讨论数据混合的基本要求。看一下左上角的数据窗格,这里有两个数据源,办公之城和咖啡连锁。

我们可以轻松在两者之间切换,并注意纬度和度量是如何变化的。

数据混合要求两个数据源之间至少有一个公共字段,如果熟悉数据库连接,您会发现这些公共字段的作用跟连接子句一样,但是数据混合不是在行集连接数据,而是将单独的查询发送给单独的数据源,并回到Tableau中,将结果聚合到同一级别。

在我们当前事例中,办公之城和咖啡连锁数据源中,都有一个“州”字段,这些字段有至少一个公共成员,如果字段名称不同,但是成员相同,我们可以手动定义其关系。

我们知道办公之城的地区字段和来自咖啡连锁的市场字段得包含指中部、东部、南部和西部,所以我们定义这两个字段是等值的。

转至数据下拉菜单,选择编辑关系,我们将主数据源更改为办公之城,选择自定义,然后添加关系,我们将选择地区和市场。

请注意,Tableau已在两个字段之间建立了关系,还列出了自动关系“州”,我们取消此操作,或者我们可以重命名一个数据源中的字段,来匹配另一个数据源。

如果两个字段同名,Tableau将在两个数据源之间创建关系,我们单击右键,将咖啡连锁的市场重命名为地区。

定义好了公共字段,那就可以开始混合了。

首先选择办公之城数据源,将销售额拖至列功能区,将“州”拖至行功能区。请注意在数据窗格中,办公之城数据源旁边现在多出一个蓝色勾号(每当在Tableau中连接到多个数据源时,在视图中打开第一个数据源,将成为主数据源,主数据源有蓝色勾号标出)。

现在我们切换到第二个数据源,请注意,“州”字段旁边的橙色连接图标(由于我们已经将“州”引入视图,所以Tableau将自动基于该字段混合,并用橙色连接表示)。

在地区字段旁边,还有一个灰色的断连,由于地区是两个数据源的公共字段,因此是另一个潜在的连接字段,只是现在未在当前视图中使用。如果还要基于该字段混合,可单击灰色连接将其激活,创建关系。

我们将咖啡连锁的销售额拖到列上来完成数据混合,现在可以看到在数据窗口中的咖啡连锁数据源旁边和胶囊上,都有一个橙色的勾号,这样我们就能在视图中区分主字段和辅助字段。

这个视图中发生了什么变化?

Tableau使用橙色连接字段“州”来确定,从每个数据源中都引入了哪些数据行。通过基于“州”混合,我们告知Tableau检查两个数据源之间的共享成员,即“州”。

我们看来自办公之城的每一个州的销售额信息,因为 Tableau 返回主数据源中所有字段成员的信息,但是请注意,在咖啡连锁数据源中缺少多个“州”的销售额信息。

在 Tableau 查询辅助数据源时,它只返回与主数据源共有字段成员的信息。因此只存在于办公之城主数据源中阿拉巴马和亚利桑那等州出现空白。

我们可以将其想象成模拟左连接,需要注意的是主数据源和辅助数据源根据工作表确定,而不是在整个工作簿中全局保持不变。

在新工作表上,数据窗格中的数据源没有那些橙色和蓝色勾号来表示他们是辅助数据源和主数据源,我们建立的关系未得到沿用。

这时的我们可以基于不同的工作表,创建不同类型的数据混合。如果我们交换数据源,将咖啡连锁用作主数据源,将办公之城用作辅助数据源,那又会怎样?

我们先将咖啡连锁的销售额拖至视图,然后拖出“州”,现在我们切换到办公之城,并拖出办公之城销售额。与前面的事例相比,该视图中的“州”只有原来的约一半,这是因为在咖啡连锁数据集中,“州”的数量比办公之城少。

Tableau 显示,咖啡连锁中所有“州”的数据,然后从办公之城只拉取相关“州”的信息,这意味着在办公之城中有,而在咖啡连锁中没有的任何“州”,将不会在此视图中显示。

现在,你对 Tableau Desktop 里如何进行数据融合已经有所了解。打开你电脑里的Tableau,亲手尝试操作,这对你的学习很有帮助!