

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

# CASE\_OPERATION
<a name="recipe-actions.CASE_OPERATION"></a>

論理条件 CASE の結果に基づいて、新しい列を作成します。ケースオペレーションはケース条件を通過し、最初の条件が満たされると値を返します。条件が true になると、オペレーションは読み取りを停止し、結果を返します。true の条件がない場合、デフォルト値を返します。

**パラメータ**
+ `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"
      }
    }
  }
}
```

## 有効な集計関数
<a name="valid-aggregate-functions"></a>

次の表は、ケースオペレーションで使用できるすべての有効な集計関数を示しています。



- ** 数値 **
  - **Condition:** 合計 / **valueExpression:** `:sum.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "sum.column.1",<br />      "value": "sum(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **戻り値:** の合計を返します。 `column.1`
  - **Condition:** Mean / **valueExpression:** `:mean.column.1` / **withExpressions:**  <pre>[<br />   {    <br />      "name": "mean.column.1",    <br />      "value": "avg(`column.1`)",    <br />      "type": "aggregate"  <br />   }<br />]</pre>  / **戻り値:** の平均を返します。 `column.1`
  - **Condition:** 平均絶対偏差 / **valueExpression:** `:meanabsolutedeviation.column.1` / **withExpressions:**  <pre>[<br />   {    <br />      "name": "meanabsolutedeviation.column.1",<br />      "value": "mean_absolute_deviation(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **戻り値:** の平均絶対偏差を返します。 `column.1`
  - **Condition:** 中央値 / **valueExpression:** `:median.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "median.column.1",<br />      "value": "median(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **戻り値:** の中央値を返します。 `column.1`
  - **Condition:** 製品 / **valueExpression:** `:product.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "product.column.1",<br />      "value": "product(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **戻り値:** の積を返します。 `column.1`
  - **Condition:** 標準偏差 / **valueExpression:** `:standarddeviation.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "standarddeviation.column.1",<br />      "value": "stddev(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **戻り値:** の標準偏差を返します。 `column.1`
  - **Condition:** Variance / **valueExpression:** `:variance.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "variance.column.1",<br />      "value": "variance(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **戻り値:** の分散を返します。 `column.1`
  - **Condition:** 平均の標準誤差 / **valueExpression:** `:standarderrorofmean.column.1` / **withExpressions:**  <pre>[<br />   {<br />   "name": "standarderrorofmean.column.1",<br />   "value": "standard_error_of_mean(`column.1`)",<br />   "type": "aggregate"<br />   }<br />]</pre>  / **戻り値:** の平均の標準誤差を返します。 `column.1`
  - **Condition:** 歪度 / **valueExpression:** `:skewness.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "skewness.column.1",<br />      "value": "skewness(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **戻り値:** の歪度を返します。 `column.1`
  - **Condition:** 尖度 / **valueExpression:** `:kurtosis.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "kurtosis.column.1",<br />      "value": "kurtosis(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **戻り値:** の尖度を返します。 `column.1`

- ** Datetime/Numeric/Text **
  - **Condition:** カウント / **valueExpression:** `:count.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "count.column.1",<br />      "value": "count(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **戻り値:** の合計行数を返します。 `column.1`
  - **Condition:** 個別にカウント / **valueExpression:** `:countdistinct.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "count.column.1",<br />      "value": "count(distinct `column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **戻り値:** の個別の行の総数を返します。 `column.1`
  - **Condition:** 最小 / **valueExpression:** `:min.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "min.column.1",<br />      "value": "min(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **戻り値:** の最小値を返します。 `column.1`
  - **Condition:** 最大 / **valueExpression:** `:max.column.1` / **withExpressions:**  <pre>[<br />   {<br />      "name": "max.column.1",<br />      "value": "max(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **戻り値:** の最大値を返します。 `column.1`



## valueExpression の有効な条件
<a name="valid-conditions-table"></a>

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



- ** 文字列 **
  - **Condition:** Contains / **valueExpression:** contains(`column`, 'text') / **説明:** 列の値にテキストが含まれているかどうかをテストする条件
  - **Condition:** は含まれません / **valueExpression:** \!contains(`column`, 'text') / **説明:** 列の値にテキストが含まれていないかどうかをテストする条件
  - **Condition:** マッチ / **valueExpression:** matches(`column`, 'pattern') / **説明:** 列の値がパターンと一致するかどうかをテストする条件
  - **Condition:** 一致しない / **valueExpression:** \!matches(`column`, 'pattern') / **説明:** 列の値がパターンと一致しないかどうかをテストする条件
  - **Condition:** Starts with (で始まる) / **valueExpression:** startsWith(`column`, 'text') / **説明:** 列の値がテキストで始まるかどうかをテストする条件
  - **Condition:** で始まらない / **valueExpression:** \!startsWith(`column`, 'text') / **説明:** 列の値がテキストで始まらないかどうかをテストする条件
  - **Condition:** Ends with / **valueExpression:** endsWith(`column`, 'text') / **説明:** 列の値がテキストで終わるかどうかをテストする条件
  - **Condition:** で終わることはありません / **valueExpression:** \!endsWith(`column`, 'text') / **説明:** 列の値がテキストで終わらないかどうかをテストする条件

- ** 数値 **
  - **Condition:** Less than / **valueExpression:** 「column」 < 数値 / **説明:** 列の値が数値より小さいかどうかをテストする条件
  - **Condition:** 以下 / **valueExpression:** `column` <= number / **説明:** 列の値が数値以下かどうかをテストする条件
  - **Condition:** Greater than / **valueExpression:** `column` > number / **説明:** 列の値が数値より大きいかどうかをテストする条件
  - **Condition:** 以上 / **valueExpression:** `column` >= number / **説明:** 列の値が数値以上かどうかをテストする条件
  - **Condition:** の間 / **valueExpression:** isBetween(`column`, minNumber, maxNumber) / **説明:** 列の値が minNumber と maxNumber の間にあるかどうかをテストする条件
  - **Condition:** 間にはありません / **valueExpression:** \!isBetween(`column`, minNumber, maxNumber) / **説明:** 列の値が minNumber と maxNumber の間にないかどうかをテストする条件

- ** ブール値 **
  - **Condition:** 正しい / **valueExpression:** `column` = TRUE / **説明:** 列の値がブール TRUE であるかどうかをテストする条件
  - **Condition:** false です / **valueExpression:** `column` = FALSE / **説明:** 列の値がブール型 FALSE であるかどうかをテストする条件

- ** 日付/タイムスタンプ **
  - **Condition:** より前 / **valueExpression:** 「列」 < 「日付」 / **説明:** 列の値が日付より前であるかどうかをテストする条件
  - **Condition:** 以前 / **valueExpression:** `column` <= 'date' / **説明:** 列の値が日付以前であるかどうかをテストする条件
  - **Condition:** より後 / **valueExpression:** 「列」 > 「日付」 / **説明:** 列の値が日付より後であるかどうかをテストする条件
  - **Condition:** 以降 / **valueExpression:** `column` >= 'date' / **説明:** 列の値が日付以降であるかどうかをテストする条件

- **  String/Numeric/Date/タイムスタンプ **
  - **Condition:** は正確に / **valueExpression:** `column` = 'value' / **説明:** 列の値が正確に値であるかどうかをテストする条件
  - **Condition:** Is not / **valueExpression:** 「列」\!= 「値」 / **説明:** 列の値が値ではないかどうかをテストする条件
  - **Condition:** が見つかりません / **valueExpression:** isMissing(`column`) / **説明:** 列の値が欠落しているかどうかをテストする条件
  - **Condition:** 欠落していない / **valueExpression:** \!isMissing(`column`) / **説明:** 列の値が欠落していないかどうかをテストする条件
  - **Condition:** 有効 / **valueExpression:** isValid(`column`, datatype) / **説明:** 列の値が有効かどうかをテストする条件 (値はデータ型であるか、データ型に変換可能)
  - **Condition:** 有効ではありません / **valueExpression:** \!isValid(`column`, datatype) / **説明:** 列の値が有効でないかどうかをテストする条件 (値はデータ型であるか、データ型に変換可能)

- ** ネスト済み **
  - **Condition:** が見つかりません / **valueExpression:** isMissing(`column`) / **説明:** 列の値が欠落しているかどうかをテストする条件
  - **Condition:** 欠落していない / **valueExpression:** \!isMissing(`column`) / **説明:** 列の値が欠落していないかどうかをテストする条件
  - **Condition:** 有効 / **valueExpression:** isValid(`column`, datatype) / **説明:** 列の値が有効かどうかをテストする条件 (値はデータ型であるか、データ型に変換可能)
  - **Condition:** 有効ではありません / **valueExpression:** \!isValid(`column`, datatype) / **説明:** 列の値が有効でないかどうかをテストする条件 (値はデータ型であるか、データ型に変換可能)

