

# 列相关性
<a name="dqdl-rule-types-ColumnCorrelation"></a>

检查两列与给定表达式之间的*相关性*。AmazonGlue Data Quality 使用 Pearson 相关系数来测量两列之间的线性相关性。结果是一个介于 -1 和 1 之间的数字，用于衡量关系的强度和方向。

**语法**

```
ColumnCorrelation {{<COL_1_NAME>}} {{<COL_2_NAME>}} {{<EXPRESSION>}}
```
+ **COL\_1\_NAME** — 要根据其评估数据质量规则的第一列的名称。

  **支持的列类型**：字节、十进制、双精度、浮点数、整数、长整数、短整数
+ **COL\_2\_NAME** — 要根据其评估数据质量规则的第二列的名称。

  **支持的列类型**：字节、十进制、双精度、浮点数、整数、长整数、短整数
+ **EXPRESSION** — 针对规则类型响应运行以生成布尔值的表达式。有关更多信息，请参阅 [Expressions](dqdl.md#dqdl-syntax-rule-expressions)。

**示例：列相关性**

以下示例规则检查列 `height` 和 `weight` 之间的相关系数是否具有很强的正相关性（系数值大于 0.8）。

```
ColumnCorrelation "height" "weight" > 0.8
```

```
ColumnCorrelation "weightinkgs" "Salary" > 0.8 where "weightinkgs > 40"
```

 **示例动态规则** 
+ `ColumnCorrelation "colA" "colB" between min(last(10)) and max(last(10))`
+ `ColumnCorrelation "colA" "colB" < avg(last(5)) + std(last(5))`

**零值行为**

 在相关性计算中，`ColumnCorrelation` 规则将忽略包含 `NULL` 值的行。例如：

```
+---+-----------+
|id |units      |
+---+-----------+
|100|0          | 
|101|null       |
|102|20         |
|103|null       |
|104|40         |
+---+-----------+
```

 第 101 行和第 103 行将被忽略，`ColumnCorrelation` 将为 1.0。