Data Workbench 量度、维度和过滤器

量度、维度和过滤器提供了一个框架,处理为 Data Workbench 数据集的数据将在此框架中进行计算。

使用此框架定义的计算结果,会显示在工作区、功能板、报表或其他输出中。简而言之,您在应用程序中看到或从应用程序中看到的任何数字都是查询数据集(其中包括量度、维度和过滤器)的结果。

从最基本的层面上来说,量度描述了从数据集中计算的内容和关于数据集的内容,维度将数据集中的数据划分为不同类别,过滤器则描述了数据集中选定部分的数据或数据子集。

当 Data Workbench 服务器处理数据以创建数据集时,会创建数据的维度,然后随着服务器读取和处理新数据而不断更新维度。量度和过滤器根据这些数据维度进行计算。

注意

如果重新定义内部量度,系统将会因错误值而运行发生异常。除非某个量度读取了 100% 数据,否则将不会生成报表。建议不要更改量度定义。

示例

想象一下,某个数据集包含了关于世界上所有人的信息。这个数据集至少包含世界所有人口及其年龄。可从该数据集计算的一个有用量度是“平均年龄”。评估此量度会得到一个数字:世界人口的平均年龄。

向数据集添加一个维度,可让这些信息更有用且更易于管理。如果数据集还包含每个人的居住国家/地区,则定义“国家/地区”维度可提供一种方法,根据世界上各个国家/地区将民众划分为不同的人群。通过“国家/地区”维度来评估“平均年龄”量度,会产生一个数字列表:一列对应各个国家/地区,一列则代表该国家/地区的平均年龄。

在量度公式中应用过滤器(或选择过滤器)可以提供更详细的信息,或允许基于现有量度和维度来定义新量度。使用“国家等于瑞典”的过滤器来评估“平均年龄”量度,会得到一个数字:瑞典人的平均年龄。基于此过滤器的量度可能是“瑞典人的平均年龄”。

例如:

Swedish_Average_Age=Average_Age[country = ‘Sweden’]

量度、维度和过滤器如何关联

一般说来,通过维度来评估量度,会导致为每个维度元素(或元素)评估该量度。在上面的示例中,“国家/地区”维度包含适用于世界各国的元素。通过“国家/地区”维度来评估“平均年龄”,可得出每个元素(国家/地区)的平均年龄,包括元素“瑞典”。

请务必注意,当您通过某个维度来评估量度时,将会收到针对特定维度元素的相同数值结果,无论您是对整个维度评估该量度,还是定义与该特定维度元素对应的过滤器。使用上一个示例,在查找瑞典人的平均年龄时,以下任一方法都会得到相同的结果:

  • 通过“国家/地区”维度来评估“平均年龄”量度,然后查看维度元素“瑞典”的数字。
  • 使用“瑞典人”过滤器评估“平均年龄”量度(表达式为 Average_Age[Country='Sweden'])。

过滤器是指引用一个或多个维度和维度元素的语法表达式。如上面的示例所示,使用表达式 [dimension=element] 是指定过滤器的一种简单方法。

应用这类过滤器,使用诸如 New_Metric=Metric[Filter] 的表达式来定义新量度同样比较简单。这类过滤器可用于根据特定的维度元素来定义新量度。要使用上面的示例,Average_Age[Country='Sweden'] 可指定瑞典人平均年龄的量度。如果我们要为此量度命名,例如 Swedis_Average_Age,则在其他计算中可以将它用作量度。例如,评估 Swedish_Average_Age/Average_Age 会得到一个数字:瑞典人的平均年龄与世界其他地区人口的比例。

如果包含世界所有人口信息的数据集还包含一个“眼睛颜色”维度,则表达式 Swedish_Average_Age[Eye_Color='green'] 会得到拥有绿色眼睛的瑞典人的平均年龄。此外,您还可以通过应用其他过滤器 (Average_Age[Country='Sweden' AND Eye_Color='green']) 在不使用中间量度定义的情况下得到相同的结果。在这种情况下,AND 运算符会使用另外两个基本的过滤器表达式来指定过滤器表达式。

在此页面上