表计算函数

您所在的位置:网站首页 分位数的计算公式 表计算函数

表计算函数

2023-08-10 02:32| 来源: 网络整理| 查看: 265

本文介绍表计算函数及其在 Tableau 中的用法。它还演示如何使用计算编辑器创建表计算。

为何使用表计算函数

表计算函数允许您对表中的值执行计算。

例如,您可以计算某个年度和若干年度个别销售额占总额的百分比。

Tableau 中可用的表计算函数FIRST( )

返回从当前行到分区中第一行的行数。例如,下面的视图显示每季度销售额。在 Date 分区中计算 FIRST() 时,第一行与第二行之间的偏移为 -1。

示例

当前行索引为 3 时,FIRST() = -2。

INDEX( )

返回分区中当前行的索引,不包含与值有关的任何排序。第一个行索引从 1 开始。例如,下表显示每季度销售额。当在 Date 分区中计算 INDEX() 时,各行的索引分别为 1、2、3、4 等。

示例

对于分区中的第三行,INDEX() = 3。

LAST( )

返回从当前行到分区中最后一行的行数。例如,下表显示每季度销售额。在 Date 分区中计算 LAST() 时,最后一行与第二行之间的偏移为 5。

示例

当前行索引为 3(共 7 行)时,LAST() = 4。

LOOKUP(expression, [offset])

返回目标行(指定为与当前行的相对偏移)中表达式的值。使用 FIRST() + n 和 LAST() - n 作为相对于分区中第一行/最后一行的目标偏移量定义的一部分。如果省略了 offset,则可以在字段菜单上设置要比较的行。如果无法确定目标行,则此函数返回 NULL。

下面的视图显示每季度销售额。当在 Date 分区中计算 LOOKUP (SUM(Sales), 2) 时,每行都会显示接下来 2 个季度的销售额值。

示例

LOOKUP(SUM([Profit]), FIRST()+2) 计算分区第三行中的 SUM(Profit)。

MODEL_EXTENSION_BOOL (模型名称, 参数, 表达式)

返回由部署在 TabPy 外部服务上的命名模型计算的表达式的布尔结果。

“模型名称”是您要使用的已部署分析模型的名称。

每个参数都是一个字符串,用于设置部署模型接受的输入值,并由分析模型定义。

使用表达式定义从 Tableau 发送到分析模型的值。请务必使用聚合函数(SUM、AVG 等)来聚合结果。

使用函数时,表达式的数据类型和顺序必须与输入参数的数据类型和顺序相匹配。

示例

MODEL_EXTENSION_BOOL ("isProfitable","inputSales", "inputCosts", SUM([Sales]), SUM([Costs]))

MODEL_EXTENSION_INT (模型名称, 参数, 表达式)

返回由部署在 TabPy 外部服务上的命名模型计算的表达式的整数结果。

“模型名称”是您要使用的已部署分析模型的名称。

每个参数都是一个字符串,用于设置部署模型接受的输入值,并由分析模型定义。

使用表达式定义从 Tableau 发送到分析模型的值。请务必使用聚合函数(SUM、AVG 等)来聚合结果。

使用函数时,表达式的数据类型和顺序必须与输入参数的数据类型和顺序相匹配。

示例

MODEL_EXTENSION_INT ("getPopulation", "inputCity", "inputState", MAX([City]), MAX ([State]))

MODEL_EXTENSION_REAL (模型名称, 参数, 表达式)

返回由部署在 TabPy 外部服务上的命名模型计算的表达式的实数结果。

“模型名称”是您要使用的已部署分析模型的名称。

每个参数都是一个字符串,用于设置部署模型接受的输入值,并由分析模型定义。

使用表达式定义从 Tableau 发送到分析模型的值。请务必使用聚合函数(SUM、AVG 等)来聚合结果。

使用函数时,表达式的数据类型和顺序必须与输入参数的数据类型和顺序相匹配。

示例

MODEL_EXTENSION_REAL ("profitRatio", "inputSales", "inputCosts", SUM([Sales]), SUM([Costs]))

MODEL_EXTENSION_STRING (模型名称, 参数, 表达式)

返回由部署在 TabPy 外部服务上的命名模型计算的表达式的字符串结果。

“模型名称”是您要使用的已部署分析模型的名称。

每个参数都是一个字符串,用于设置部署模型接受的输入值,并由分析模型定义。

使用表达式定义从 Tableau 发送到分析模型的值。请务必使用聚合函数(SUM、AVG 等)来聚合结果。

使用函数时,表达式的数据类型和顺序必须与输入参数的数据类型和顺序相匹配。

示例

MODEL_EXTENSION_STR ("mostPopulatedCity", "inputCountry", "inputYear", MAX ([Country]), MAX([Year]))

MODEL_PERCENTILE(target_expression, predictor_expression(s))

返回期望值小于或等于观察标记的概率(介于 0 和 1 之间),由目标表达式和其他预测因子定义。这是后验预测分布函数,也称为累积分布函数 (CDF)。

此函数是 MODEL_QUANTILEL 的逆函数。有关预测建模函数的信息,请参见预测建模函数在 Tableau 中的工作方式。

示例

以下公式返回销售额总和标记的分位数,根据订单计数进行调整。

MODEL_PERCENTILE(SUM([Sales]), COUNT([Orders]))

MODEL_QUANTILE(quantile, target_expression, predictor_expression(s))

以指定的分位数返回由目标表达式和其他预测因子定义的可能范围内的目标数值。这是后验预测分位数。

此函数是 MODEL_PERCENTILE 的逆函数。有关预测建模函数的信息,请参见预测建模函数在 Tableau 中的工作方式。

示例

以下公式返回中位数 (0.5) 预测销售额总和,根据订单数进行调整。

MODEL_QUANTILE(0.5, SUM([Sales]), COUNT([Orders]))

PREVIOUS_VALUE(expression)

返回此计算在上一行中的值。如果当前行是分区的第一行,则返回给定表达式。

示例

SUM([Profit]) * PREVIOUS_VALUE(1) 计算 SUM(Profit) 的运行产品。

RANK(expression, ['asc' | 'desc'])

返回分区中当前行的标准竞争排名。为相同的值分配相同的排名。使用可选的 'asc' | 'desc' 参数指定升序或降序顺序。默认为降序。

利用此函数,将对值集 (6, 9, 9, 14) 进行排名 (4, 2, 2, 1)。

在排名函数中,会忽略 Null。它们不进行编号,且不计入百分位排名计算的总记录数中。

有关不同排名选项的信息,请参见排名计算。

示例

下图显示对一组值执行各种排名函数(RANK、RANK_DENSE、RANK_MODIFIED、RANK_PERCENTILE 和 RANK_UNIQUE)的效果。数据集包含 14 名学生(StudentA 到 StudentN)的相关信息;“Age”列显示每个学生的当前年龄(所有学生都介于 17 岁和 20 岁之间)。其余的列会显示每个排名函数对年龄值集的影响,并始终假定函数的默认顺序(升序或降序)。

RANK_DENSE(expression, ['asc' | 'desc'])

返回分区中当前行的密集排名。为相同的值分配相同的排名,但不会向数字序列中插入间距。使用可选的 'asc' | 'desc' 参数指定升序或降序顺序。默认为降序。

利用此函数,将对值集 (6, 9, 9, 14) 进行排名 (3, 2, 2, 1)。

在排名函数中,会忽略 Null。它们不进行编号,且不计入百分位排名计算的总记录数中。

有关不同排名选项的信息,请参见排名计算。

RANK_MODIFIED(expression, ['asc' | 'desc'])

返回分区中当前行的调整后竞争排名。为相同的值分配相同的排名。使用可选的 'asc' | 'desc' 参数指定升序或降序顺序。默认为降序。

利用此函数,将对值集 (6, 9, 9, 14) 进行排名 (4, 3, 3, 1)。

在排名函数中,会忽略 Null。它们不进行编号,且不计入百分位排名计算的总记录数中。

有关不同排名选项的信息,请参见排名计算。

RANK_PERCENTILE(expression, ['asc' | 'desc'])

返回分区中当前行的百分位排名。使用可选的 'asc' | 'desc' 参数指定升序或降序顺序。默认为升序。

利用此函数,将对值集 (6, 9, 9, 14) 进行排名 (0, 0.67, 0.67, 1.00)。

在排名函数中,会忽略 Null。它们不进行编号,且不计入百分位排名计算的总记录数中。

有关不同排名选项的信息,请参见排名计算。

RANK_UNIQUE(expression, ['asc' | 'desc'])

返回分区中当前行的唯一排名。为相同的值分配相同的排名。使用可选的 'asc' | 'desc' 参数指定升序或降序顺序。默认为降序。

利用此函数,将对值集 (6, 9, 9, 14) 进行排名 (4, 2, 3, 1)。

在排名函数中,会忽略 Null。它们不进行编号,且不计入百分位排名计算的总记录数中。

有关不同排名选项的信息,请参见排名计算。

RUNNING_AVG(expression)

返回给定表达式从分区中第一行到当前行的运行平均值。

下面的视图显示每季度销售额。当在 Date 分区中计算 RUNNING_AVG(SUM([Sales]) 时,结果为每个季度的销售额值的运行平均值。

示例

RUNNING_AVG(SUM([Profit])) 计算 SUM(Profit) 的运行平均值。

RUNNING_COUNT(expression)

返回给定表达式从分区中第一行到当前行的运行计数。

示例

RUNNING_COUNT(SUM([Profit])) 计算 SUM(Profit) 的运行计数。

RUNNING_MAX(expression)

返回给定表达式从分区中第一行到当前行的运行最大值。

示例

RUNNING_MAX(SUM([Profit])) 计算 SUM(Profit) 的运行最大值。

RUNNING_MIN(expression)

返回给定表达式从分区中第一行到当前行的运行最小值。

示例

RUNNING_MIN(SUM([Profit])) 计算 SUM(Profit) 的运行最小值。

RUNNING_SUM(expression)

返回给定表达式从分区中第一行到当前行的运行总计。

示例

RUNNING_SUM(SUM([Profit])) 计算 SUM(Profit) 的运行总计

SIZE()

返回分区中的行数。例如,下面的视图显示每季度销售额。在 Date 分区中有七行,因此 Date 分区的 Size() 为 7。

示例

当前分区包含五行时 SIZE() = 5。

SCRIPT_BOOL

返回指定表达式的布尔结果。表达式直接传递给正在运行的分析扩展程序服务实例。

在 R 表达式中,使用 .argn(带前导句点)引用参数(.arg1、.arg2 等)。

在 Python 表达式中,使用 _argn(带前导下划线)。

示例

在此 R 示例中,.arg1 等于 SUM([Profit]):

SCRIPT_BOOL("is.finite(.arg1)", SUM([Profit]))

对于华盛顿州中的商店 ID,下一示例返回 True,否则返回 False。此示例可以是标题为 IsStoreInWA 的计算字段的定义。

SCRIPT_BOOL('grepl(".*_WA", .arg1, perl=TRUE)',ATTR([Store ID]))

Python 的命令将采用以下形式:

SCRIPT_BOOL("return map(lambda x : x > 0, _arg1)", SUM([Profit]))

SCRIPT_INT

返回指定表达式的整数结果。表达式直接传递给正在运行的分析扩展程序服务实例。

在 R 表达式中,使用 .argn(带前导句点)引用参数(.arg1、.arg2 等)

在 Python 表达式中,使用 _argn(带前导下划线)。

示例

在此 R 示例中,.arg1 等于 SUM([Profit]):

SCRIPT_INT("is.finite(.arg1)", SUM([Profit]))

在下一示例中,使用 k-means clustering 创建三个群集:

SCRIPT_INT('result



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3