本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
案例操作
根据逻辑条件 CASE 的结果创建一个新列。case 操作经历案例条件,并在满足第一个条件时返回一个值。一旦条件为真,操作将停止读取并返回结果。如果没有条件为真,则返回默认值。
Parameters
-
valueExpression
— 条件。 -
withExpressions
— 聚合结果的配置。 -
targetColumn
— 新创建的列的名称。
例 Example
{ "RecipeStep": { "Action": { "Operation": "CASE_OPERATION", "Parameters": { "valueExpression": "case when `column11` < `column.2` then 'result1' when `column2` < 'value2' then 'result2' else 'high' end", "targetColumn": "result.column" } } } }
有效的聚合函数
下表显示了可在案例操作中使用的所有有效聚合函数。
Column Type | Condition | 值表达式 | 含表达式 | 返回值 |
---|---|---|---|---|
数值 |
总计 |
`:和列 .1` |
|
返回 |
Mean |
`:平均值。列 .1` |
|
返回的均值 |
|
平均绝对偏差 |
`:均值绝对偏差。列 .1` |
|
返回 |
|
MEDIAN |
`:中位数。列 .1` |
|
返回 |
|
产品 |
`:产品。列 .1` |
|
返回的产品 |
|
标准偏差 |
`:标准偏差。列 .1` |
|
返回 |
|
VANCE |
`:变异。列 .1` |
|
返回 |
|
均值的标准误 |
`:标准平均值 .栏 .1` |
|
返回平均值的标准误 |
|
偏斜 |
`:偏斜。列 .1` |
|
返回 |
|
峰度 |
`:库尔多西 .1` |
|
返回 |
|
日期时间/数字/文本 |
计数 |
`:计数。列 .1` |
|
返回中的 |
计数不同 |
`:数目不同。列 .1` |
|
返回中的不同行总数。 |
|
Min |
`:最小列 .1` |
|
返回最小值 |
|
Max |
`:最大列 .1` |
|
返回最大值 |
值表达式中的有效条件
下表显示了支持的条件以及您可以使用的值表达式。
Column Type | Condition | 值表达式 | 描述 |
---|---|---|---|
字符串 |
包含 |
包含(“列”,“文本”) |
测试列中的值是否包含文本的条件 |
不包含 |
! 包含(“列”,“文本”) |
测试列中的值是否不包含文本的条件 |
|
匹配项 |
匹配(“列”,“模式”) |
测试列中的值是否与模式匹配的条件 |
|
不匹配 |
! 匹配(“列”,“模式”) |
测试列中的值是否与模式不匹配的条件 |
|
从 开始 |
开头为(`列`,'文本') |
测试列中的值是否以文本开头的条件 |
|
不以 |
! 开头为(`列`,'文本') |
测试列中的值是否不以文本开头的条件 |
|
Ends with |
结尾为(`列`,'文本') |
测试列中的值是否以文本结尾的条件 |
|
不结束 |
! 结尾为(`列`,'文本') |
测试列中的值是否以文本结尾的条件 |
|
数值 |
小于 |
“列” < 数字 |
测试列中的值是否小于数字的条件 |
小于或等于 |
“列” <= 数字 |
测试列中的值是否小于或等于的数的条件。 |
|
大于 |
`列` > 数字 |
测试列中的值是否大于数字的条件 |
|
大于或等于 |
`列` >= 数字 |
测试列中的值是否大于或等于的数的条件。 |
|
介于 |
介于(“列”、“最小数字”、“最大数字”) |
测试列中的值是否介于最小数字和最大数字之间的条件 |
|
不介于 |
! 介于(“列”、“最小数字”、“最大数字”) |
测试列中的值是否不介于最小数字和最大数字之间的条件 |
|
Boolean |
true |
`列` = 真 |
测试列中的值是否为布尔值 TRUE 的条件 |
false |
`列` = 假 |
测试列中的值是否为布尔值 FALSE 的条件 |
|
日期/时间stamp |
早于 |
`列` < '日期' |
测试列中的值是否早于日期的条件 |
早于或等于 |
“列 '<= '日期' |
用于测试列中的值是否早于或等于日期的条件 |
|
晚于 |
`列` > '日期' |
测试列中的值是否晚于日期的条件 |
|
晚于或等于 |
“列 '>= '日期' |
用于测试列中的值是否晚于或等于日期的条件 |
|
字符串/数字/日期/时间戳 |
恰好 |
`列` = '值' |
测试列中的值是否完全是值的条件 |
不是 |
“列”! = '值' |
测试列中的值是否不是值的条件 |
|
缺少 |
缺少(“列”) |
测试列中的值是否缺失的条件 |
|
未缺少 |
! 缺少(“列”) |
测试列中的值是否不缺失的条件 |
|
有效性 |
isValid(`列`,数据类型) |
测试列中的值是否有效的条件(该值为数据类型或者可以转换为数据类型) |
|
无效 |
! isValid(`列`,数据类型) |
测试列中的值是否无效的条件(该值为数据类型或者可以转换为数据类型) |
|
嵌套 |
缺少 |
缺少(“列”) |
测试列中的值是否缺失的条件 |
未缺少 |
! 缺少(“列”) |
测试列中的值是否不缺失的条件 |
|
有效性 |
isValid(`列`,数据类型) |
测试列中的值是否有效的条件(该值为数据类型或者可以转换为数据类型) |
|
无效 |
! isValid(`列`,数据类型) |
测试列中的值是否无效的条件(该值为数据类型或者可以转换为数据类型) |