View a markdown version of this page

BOOLEAN_OPERATION - AWS Glue DataBrewデベロッパーガイド

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

BOOLEAN_OPERATION

論理条件 IF の結果に基づいて、新しい列を作成します。ブール式が true の場合は true 値を返し、ブール式が false の場合は false 値を返し、カスタム値を返す。

パラメータ
  • trueValueExpression – 条件が満たされた場合の結果。

  • falseValueExpression – 条件が満たされない場合の結果。

  • valueExpression – ブール条件。

  • withExpressions – 集計結果の設定。

  • targetColumn – 新しく作成された列の名前。

trueValueExpression、falseValueExpression、valueExpression では、定数値、列参照、集計結果を使用できます。

例例: 定数値

数値や文など、変更されない値。

{ "RecipeStep": { "Action": { "Operation": "BOOLEAN_OPERATION", "Parameters": { "trueValueExpression": "It is true.", "falseValueExpression": "It is false.", "valueExpression": "`column.1` < 2000", "targetColumn": "result.column" } } } }
例例: 列参照

データセット内の列である値。

{ "RecipeStep": { "Action": { "Operation": "BOOLEAN_OPERATION", "Parameters": { "trueValueExpression": "`column.2`", "falseValueExpression": "`column.3`", "valueExpression": "`column.1` < `column.4`", "targetColumn": "result.column" } } } }
例例: 結果を集計する

集計関数によって計算される値。集計関数は列に対して計算を実行し、単一の値を返します。

{ "RecipeStep": { "Action": { "Operation": "BOOLEAN_OPERATION", "Parameters": { "trueValueExpression": "`:mincolumn.2`", "falseValueExpression": "`:maxcolumn.3`", "valueExpression": "`column.1` < `:avgcolumn.4`", "withExpressions": "[{\"name\":\"mincolumn.2\",\"value\":\"min(`column.2`)\",\"type\":\"aggregate\"},{\"name\":\"maxcolumn.3\",\"value\":\"max(`column.3`)\",\"type\":\"aggregate\"},{\"name\":\"avgcolumn.4\",\"value\":\"avg(`column.4`)\",\"type\":\"aggregate\"}]", "targetColumn": "result.column" } } } }

ユーザーはエスケープして JSON を文字列に変換する必要があります。

trueValueExpression、falseValueExpression、および valueExpression のパラメータ名は、 withExpressions の名前と一致する必要があることに注意してください。一部の列の集計結果を使用するには、それらの列のパラメータを作成し、集計関数を指定する必要があります。

例例:
{ "RecipeStep": { "Action": { "Operation": "BOOLEAN_OPERATION", "Parameters": { "trueValueExpression": "It is true.", "falseValueExpression": "It is false.", "valueExpression": "`column.1` < 2000", "targetColumn": "result.column" } } } }
例例: および/または

および または を使用して、複数の条件を組み合わせることができます。

{ "RecipeStep": { "Action": { "Operation": "BOOLEAN_OPERATION", "Parameters": { "trueValueExpression": "It is true.", "falseValueExpression": "It is false.", "valueExpression": "`column.1` < 2000 and `column.2` >= `column.3", "targetColumn": "result.column" } } } } { "RecipeStep": { "Action": { "Operation": "BOOLEAN_OPERATION", "Parameters": { "trueValueExpression": "`column.4`", "falseValueExpression": "`column.5`", "valueExpression": "startsWith(`column1`, 'value1') or endsWith(`column2`, 'value2')", "targetColumn": "result.column" } } } }

有効な集計関数

以下の表は、ブール演算で使用できるすべての有効な集計関数を示しています。

[列のタイプ] Condition valueExpression withExpressions 戻り値

数値

合計

`:sum.column.1`

[ { "name": "sum.column.1", "value": "sum(`column.1`)", "type": "aggregate" } ]

の合計を返します。 column.1

Mean

`:mean.column.1`

[ { "name": "mean.column.1", "value": "avg(`column.1`)", "type": "aggregate" } ]

の平均を返します。 column.1

平均絶対偏差

`:meanabsolutedeviation.column.1`

[ { "name": "meanabsolutedeviation.column.1", "value": "mean_absolute_deviation(`column.1`)", "type": "aggregate" } ]

の平均絶対偏差を返します。 column.1

中央値

`:median.column.1`

[ { "name": "median.column.1", "value": "median(`column.1`)", "type": "aggregate" } ]

の中央値を返します。 column.1

製品

`:product.column.1`

[ { "name": "product.column.1", "value": "product(`column.1`)", "type": "aggregate" } ]

の積を返します。 column.1

標準偏差

`:standarddeviation.column.1`

[ { "name": "standarddeviation.column.1", "value": "stddev(`column.1`)", "type": "aggregate" } ]

の標準偏差を返します。 column.1

Variance

`:variance.column.1`

[ { "name": "variance.column.1", "value": "variance(`column.1`)", "type": "aggregate" } ]

の分散を返します。 column.1

平均の標準誤差

`:standarderrorofmean.column.1`

[ { "name": "standarderrorofmean.column.1", "value": "standard_error_of_mean(`column.1`)", "type": "aggregate" } ]

の平均の標準誤差を返します。 column.1

歪み

`:skewness.column.1`

[ { "name": "skewness.column.1", "value": "skewness(`column.1`)", "type": "aggregate" } ]

の歪度を返します。 column.1

尖度

`:kurtosis.column.1`

[ { "name": "kurtosis.column.1", "value": "kurtosis(`column.1`)", "type": "aggregate" } ]

の尖度を返します。 column.1

Datetime/Numeric/Text

カウント

`:count.column.1`

[ { "name": "count.column.1", "value": "count(`column.1`)", "type": "aggregate" } ]

の合計行数を返します。 column.1

個別にカウント

`:countdistinct.column.1`

[ { "name": "count.column.1", "value": "count(distinct `column.1`)", "type": "aggregate" } ]

の個別の行の総数を返します。 column.1

最小

`:min.column.1`

[ { "name": "min.column.1", "value": "min(`column.1`)", "type": "aggregate" } ]

の最小値を返します。 column.1

最大

`:max.column.1`

[ { "name": "max.column.1", "value": "max(`column.1`)", "type": "aggregate" } ]

の最大値を返します。 column.1

valueExpression の有効な条件

次の表は、サポートされている条件と使用できる値式を示しています。

[列のタイプ] Condition valueExpression 説明

文字列

Contains

contains(`column`, 'text')

列の値にテキストが含まれているかどうかをテストする条件

は含まれません

!contains(`column`, 'text')

列の値にテキストが含まれていないかどうかをテストする条件

マッチ

matches(`column`, 'pattern')

列の値がパターンと一致するかどうかをテストする条件

一致しない

!matches(`column`, 'pattern')

列の値がパターンと一致しないかどうかをテストする条件

Starts with (で始まる)

startsWith(`column`, 'text')

列の値がテキストで始まるかどうかをテストする条件

で始まらない

!startsWith(`column`, 'text')

列の値がテキストで始まらないかどうかをテストする条件

Ends with

endsWith(`column`, 'text')

列の値がテキストで終わるかどうかをテストする条件

で終わることはありません

!endsWith(`column`, 'text')

列の値がテキストで終わらないかどうかをテストする条件

数値

Less than

「column」 < 数値

列の値が数値より小さいかどうかをテストする条件

以下

`column` <= number

列の値が数値以下かどうかをテストする条件

Greater than

`column` > number

列の値が数値より大きいかどうかをテストする条件

以上

`column` >= number

列の値が数値以上かどうかをテストする条件

の間

isBetween(`column`, minNumber, maxNumber)

列の値が minNumber と maxNumber の間にあるかどうかをテストする条件

間ではない

!isBetween(`column`, minNumber, maxNumber)

列の値が minNumber と maxNumber の間にないかどうかをテストする条件

ブール値

正しい

`column` = TRUE

列の値がブール TRUE であるかどうかをテストする条件

false です

`column` = FALSE

列の値がブール型 FALSE であるかどうかをテストする条件

日付/タイムスタンプ

より前

「列」 < 「日付」

列の値が日付より前であるかどうかをテストする条件

以前

`column` <= 'date'

列の値が日付以前であるかどうかをテストする条件

より後

「列」 > 「日付」

列の値が日付より後であるかどうかをテストする条件

以降

`column` >= 'date'

列の値が日付以降であるかどうかをテストする条件

String/Numeric/Date/タイムスタンプ

は正確に

`column` = 'value'

列の値が正確に値であるかどうかをテストする条件

Is not

「列」!= 「値」

列の値が値ではないかどうかをテストする条件

が見つかりません

isMissing(`column`)

列の値が欠落しているかどうかをテストする条件

欠落していない

!isMissing(`column`)

列の値が欠落していないかどうかをテストする条件

有効

isValid(`column`, datatype)

列の値が有効かどうかをテストする条件 (値はデータ型であるか、データ型に変換可能)

有効ではありません

!isValid(`column`, datatype)

列の値が有効でないかどうかをテストする条件 (値はデータ型であるか、データ型に変換可能)

ネスト済み

が見つかりません

isMissing(`column`)

列の値が欠落しているかどうかをテストする条件

欠落していない

!isMissing(`column`)

列の値が欠落していないかどうかをテストする条件

有効

isValid(`column`, datatype)

列の値が有効かどうかをテストする条件 (値はデータ型であるか、データ型に変換可能)

有効ではありません

!isValid(`column`, datatype)

列の値が有効でないかどうかをテストする条件 (値はデータ型であるか、データ型に変換可能)