# 关系函数

这是一组函数，使用已聚合的数字计算图表中各个维度值的属性。

函数是关系型的，因为函数输出不仅取决于数据点本身的值，还取决于值与其他数据点的关系。例如，如果不与其他维度值进行比较，就无法计算排名。

这些函数只可用于图表表达式中。 它们不能在加载脚本中使用。

图表中需要一个维度，因为它定义了比较所需的其他数据点。因此，关系函数在无量纲图表（例如，KPI 对象）中没有意义。

使用每个函数的下拉列表可查看每个函数的简短描述和语法。单击语法描述中的函数名称可了解更多信息。

## 排名函数

信息注释当使用这些函数时，会自动禁用零值。NULL 值将被忽略。

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RelationalFunctions/relational-functions.htm)

#### Rank

Rank() 用于在表达式中计算图表的行数，并且对于每一行显示在表达式中计算的维度值的相对位置。当计算表达式的值时，该函数将结果与包含当前列片段的其他行的结果比较，然后返回片段中当前行的排名。

[**rank**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RelationalFunctions/rank.htm)([TOTAL [&lt;fld {, fld}&gt;]] expr[, mode[, fmt]])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RelationalFunctions/relational-functions.htm)

#### HRank

HRank() 用于对表达式求值，并将结果与包含透视表的当前行段的其他行的结果进行比较。然后，此函数返回段内当前行的排行。

[**HRank**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RelationalFunctions/HRank.htm)([TOTAL] expr[, mode[, fmt]])

## 集群函数

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RelationalFunctions/relational-functions.htm)

#### KMeans2D

KMeans2D() 通过应用 k 均值集群计算图表的行，并且对于每个图表行，显示此数据点已分配到的集群的集群 id。集群算法使用的列分别由参数 coordinate\_1 和 coordinate\_2 确定。二者都是聚合型。创建的集群数由 num\_clusters 参数确定。数据可以通过规范参数进行规范化。

[**KMeans2D**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RelationalFunctions/KMeans2D.htm)(num\_clusters, coordinate\_1, coordinate\_2 [, norm])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RelationalFunctions/relational-functions.htm)

#### KMeansND

KMeansND() 通过应用 k 均值集群计算图表的行，并且对于每个图表行，显示此数据点已分配到的集群的集群 id。集群算法使用的列由参数 coordinate\_1 和 coordinate\_2 等确定（可达 n 列）。这些都是聚合型。创建的集群数由 num\_clusters 参数确定。

[**KMeansND**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RelationalFunctions/KMeansND.htm)(num\_clusters, num\_iter, coordinate\_1, coordinate\_2 [,coordinate\_3 [, ...]])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RelationalFunctions/relational-functions.htm)

#### KMeansCentroid2D

KMeansCentroid2D() 通过应用 k 均值集群计算图表的行，并且对于每个图表行，显示此数据点已分配到的集群的所需坐标。集群算法使用的列分别由参数 coordinate\_1 和 coordinate\_2 确定。二者都是聚合型。创建的集群数由 num\_clusters 参数确定。数据可以通过规范参数进行规范化。

[**KMeansCentroid2D**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RelationalFunctions/KMeansCentroid2D.htm)(num\_clusters, coordinate\_no, coordinate\_1, coordinate\_2 [, norm])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RelationalFunctions/relational-functions.htm)

#### KMeansCentroidND

KMeansCentroidND() 通过应用 k 均值集群计算图表的行，并且对于每个图表行，显示此数据点已分配到的集群的所需坐标。集群算法使用的列由参数 coordinate\_1 和 coordinate\_2 等确定（可达 n 列）。这些都是聚合型。创建的集群数由 num\_clusters 参数确定。

[**KMeansCentroidND**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RelationalFunctions/KMeansCentroidND.htm)(num\_clusters, num\_iter, coordinate\_no, coordinate\_1, coordinate\_2 [,coordinate\_3 [, ...]])

## 时间序列分解函数

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RelationalFunctions/relational-functions.htm)

#### STL\_Trend

STL\_Trend 是一个时间序列分解函数。与 STL\_Seasonal 和 STL\_Residual 一起，此函数用于将时间序列分解为季节、趋势和残差分量。在 STL 算法的背景下，时间序列分解用于在给定输入度量和其他参数的情况下识别重复出现的季节模式和总体趋势。STL\_Trend 函数将从时间序列数据中识别不受季节模式或周期影响的总体趋势。

[**stl_trend**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RelationalFunctions/stl_trend.htm)(target\_measure, period\_int [,seasonal\_smoother [,trend\_smoother]])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RelationalFunctions/relational-functions.htm)

#### STL\_Seasonal

STL\_Seasonal 是一个时间序列分解函数。与 STL\_Trend 和 STL\_Residual 一起，此函数用于将时间序列分解为季节、趋势和残差分量。在 STL 算法的背景下，时间序列分解用于在给定输入度量和其他参数的情况下识别重复出现的季节模式和总体趋势。STL\_Seasonal 函数可以识别时间序列中的季节模式，将其与数据显示的总体趋势相分离。

[**stl_seasonal**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RelationalFunctions/stl_seasonal.htm)(target\_measure, period\_int [,seasonal\_smoother [,trend\_smoother]])

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RelationalFunctions/relational-functions.htm)

#### STL\_Residual

STL\_Residual 是一个时间序列分解函数。与 STL\_Seasonal 和 STL\_Trend一起，此函数用于将时间序列分解为季节、趋势和残差分量。在 STL 算法的背景下，时间序列分解用于在给定输入度量和其他参数的情况下识别重复出现的季节模式和总体趋势。在执行这项操作时，输入度量中部分变化既不符合季节成分，也不符合趋势成分，将被定义为残差成分。STL\_Residual 图表函数捕获计算的这一部分。

[**stl_residual**](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RelationalFunctions/stl_residual.htm)(target\_measure, period\_int [,seasonal\_smoother [,trend\_smoother]])