处理数字

本页介绍了在 Cloud Data Fusion Studio 的 Wrangler 工作区中准备数据时如何执行数值计算。

您可以在以下数据类型的列中执行这些转换:

  • 整数
  • 小数
  • 双精度型
  • 浮点数
  • 简洁版

如需了解详情,请参阅 set-column 指令。

您可以对一列或多列使用数值函数。可用的数学函数因您选择的列数而异。您可以选择创建一个包含计算结果的新列,也可以让结果显示在添加转换的列中。

如果您将数值函数应用于单个列,其行为与将数值函数应用于多个列的行为不同。例如:

  • 如果您对单个列使用 Multiply() 函数,则需要指定一个小数值,以便对该列中的每个值进行乘法运算。Wrangler 会对示例数据执行乘法,并在同一列或新列中显示新值。
  • 如果您对多个列使用 Multiply() 函数,Wrangler 会对所选列的每一行中的值进行乘法,并在转换的第一列中显示新值。

对一列中的值执行数值计算

如需对某个列应用数字计算,请按以下步骤操作:

  1. 前往 Cloud Data Fusion 中的 Wrangler 工作区
  2. 数据标签页中,找到列名称,然后点击 arrow_drop_down 展开箭头。
  3. 选择计算,然后选择一个选项,例如加法

    某些函数需要您输入小数值才能完成计算。例如,如果您选择减去,则必须输入要从每行中减去的值。

  4. 可选:如需为计算值创建新列,请选中复制到新列复选框。

  5. 点击应用

这些值会根据计算结果而变化。Wrangler 会将相应指令添加为配方中的步骤。例如,如果您从 Price 列中的每个值中减去 2,Wrangler 会向该食谱添加以下转换:

set-column :Price Price - 2

运行数据流水线时,系统会将转换应用于该列中的所有值。

针对单个列支持的计算

您可以对某个列中的所有值执行以下计算:

函数 说明
绝对值 返回列中每个值的绝对值。例如,-10 的绝对值为 10。
添加 向列中添加正或负小数,或添加多列以输出每行的总和。
Arccos 返回某个列中每个值的余弦值的倒数。
Arcsin 返回某个列中每个值的 sin 的倒数。
Arctan 返回某个列中每个值的反正切值。
Ceil 返回大于或等于列中每个单元格的数值的最小整数。例如,如果值为 2.21,Ceil 会返回 3。如果值为 5.88,Ceil 会返回 6。如果值为 -5.15,Ceil 会返回 -5。
Cos 返回每个列值的余弦。
Cube 将列中的每个值都乘方到 3。
立方根 返回列中每个值的立方根。
除法 将列中的每个值除以正负小数,或将两列中的每个值进行除法。
楼层 返回大于或等于列中每个单元格中的数值的最大整数。例如,如果值为 2.21,则 FLOOR 会返回 2。如果值为 5.88,则 FLOOR 会返回 5。同样,如果值为 -5.15,则 FLOOR 会返回 -6。
日志 返回列中每个值对应的对数。
Modulo 返回将列中的每个值除以正小数的余数,或返回将两列中的每个值除以另一列的余数。
乘法 将列中的每个值乘以正负小数,或将两列中的每个值相乘。
自然日志 返回某个列中每个值的自然对数。
Power of 将列值的值升为指定次幂。
随机 在指定列中生成不可预测的随机 Double 值。
Round 对列中的每个值进行四舍五入。
Sin 返回某个列中每个值的 sin 值。
方形 将列中的每个值都乘以 2。
平方根 返回列中每个值的平方根。
减法 从列中的每个值中减去一个正或负小数。
Tan 返回列中每个值的正切值。

对两个列中的值执行数值计算

如需对两个列应用数字计算,请按以下步骤操作:

  1. 前往 Cloud Data Fusion 中的 Wrangler 工作区
  2. 数据标签页中,按两列名称选择复选框。
  3. 找到列名称,然后点击 arrow_drop_down 展开箭头。
  4. 选择计算,然后选择一个选项,例如加法
  5. 可选:如需为计算值创建新列,请选中复制到新列复选框。否则,计算值会替换现有值。
  6. 点击应用

这些值会根据计算结果而变化。Wrangler 会将相应指令添加为配方中的步骤。例如,如果您在 Q1_SalesQ2_Sales 列的每行中添加值,并创建一个名为 H1_Sales 的新列,Wrangler 会将以下转换添加到该食谱中:

set-column :H1_Sales arithmetic:add(Q1_Sales, Q2_Sales)

当您运行数据流水线时,Wrangler 会执行转换,并创建一个名为 H1_Sales 的新列,其中包含 Q1_SalesQ2_Sales 的总和。

支持在两列中进行的计算

您可以对两个列中每行的值执行以下数值计算:

函数 说明
添加 向列添加正或负小数,或添加多个列以输出每行的总和。
平均 返回多列中每行的平均值。
除法 将列中的每个值除以正负小数,或将两列中的每个值进行除法。
等于 布尔函数,用于按行比较两个列,以确定值是否匹配。返回 truefalse
LCM 返回两个列中每个数字的最小公倍数。
Max 返回两个列中每行的最大值。
最小 返回两个列中每行的最小值。
Modulo 返回将列中的每个值除以正小数的余数,或返回将两列中的每个值除以另一列的余数。
乘法 将列中的每个值乘以正负小数,或将两列中的每个值相乘。
减法 从列中的每个值中减去正或负小数。

对三列或更多列中的值执行数值计算

Cloud Data Fusion 6.8.0 及更高版本支持对三列或更多列中的值执行数值计算。

如需对三列或更多列应用数字计算,请按以下步骤操作:

  1. 前往 Cloud Data Fusion 中的 Wrangler 工作区
  2. 数据标签页中,按两列名称选择复选框。
  3. 找到列名称,然后点击 arrow_drop_down 展开箭头。
  4. 选择计算,然后选择一个选项,例如加法
  5. 可选:如需为计算值创建新列,请选中复制到新列复选框。否则,计算值会替换现有值。
  6. 点击应用

这些值会根据计算结果而变化。Wrangler 会将相应指令添加为配方中的步骤。例如,如果您要将 Q1_SalesQ2_SalesQ3_SalesQ4_Sales 列的每一行的值相加,并创建一个名为 2022_Sales 的新列,Wrangler 会将以下转换添加到该食谱中:

set-column :2022_Sales arithmetic:add(Q1_Sales, Q2_Sales, Q3_Sales, Q4_Sales)

运行数据流水线时,Wrangler 会执行转换,并创建一个名为 2022_Sales 的新列,其中包含 Q1_SalesQ2_SalesQ3_SalesQ4_Sales 的总和。

支持对三列或更多列中的值进行计算

您可以对三列或更多列中每行的值执行以下计算:

函数 说明
添加 向列添加正或负小数,或添加多个列以输出每行的总和。
平均 返回多列中每行的平均值。
等于 布尔函数,用于按行比较两个列,以确定值是否匹配。返回 truefalse
Max 返回两个列中每行的最大值。
最小 返回两个列中每行的最小值。
乘法 将列中的每个值乘以正负小数,或将两列中的每个值相乘。

后续步骤