

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# CAS\_OPÉRATION
<a name="recipe-actions.CASE_OPERATION"></a>

Créez une nouvelle colonne, basée sur le résultat de la condition logique CASE. L'opération de dossier passe en revue les conditions du cas et renvoie une valeur lorsque la première condition est remplie. Une fois qu'une condition est vraie, l'opération arrête la lecture et renvoie le résultat. Si aucune condition n'est vraie, elle renvoie la valeur par défaut.

**Parameters**
+ `valueExpression`— Des conditions.
+ `withExpressions`— Configuration pour les résultats agrégés.
+ `targetColumn`— Nom de la colonne nouvellement créée.

**Example Exemple**  
  

```
{
  "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"
      }
    }
  }
}
```

## Fonctions d'agrégation valides
<a name="valid-aggregate-functions"></a>

Le tableau ci-dessous présente toutes les fonctions d'agrégation valides qui peuvent être utilisées dans le cadre d'une opération de cas.



- ** Numérique **
  - **Condition:** Somme / **Expression de valeur:** `:sum.column.1` / **Avec des expressions:**  <pre>[<br />   {<br />      "name": "sum.column.1",<br />      "value": "sum(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valeur renvoyée:** Renvoie la somme de `column.1`
  - **Condition:** Mean / **Expression de valeur:** `:mean.column.1` / **Avec des expressions:**  <pre>[<br />   {    <br />      "name": "mean.column.1",    <br />      "value": "avg(`column.1`)",    <br />      "type": "aggregate"  <br />   }<br />]</pre>  / **Valeur renvoyée:** Renvoie la moyenne de `column.1`
  - **Condition:** Écart absolu moyen / **Expression de valeur:** `:meanabsolutedeviation.column.1` / **Avec des expressions:**  <pre>[<br />   {    <br />      "name": "meanabsolutedeviation.column.1",<br />      "value": "mean_absolute_deviation(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valeur renvoyée:** Renvoie l'écart absolu moyen de `column.1`
  - **Condition:** Médiane / **Expression de valeur:** `:median.column.1` / **Avec des expressions:**  <pre>[<br />   {<br />      "name": "median.column.1",<br />      "value": "median(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valeur renvoyée:** Renvoie la médiane de `column.1`
  - **Condition:** Produit (langue française non garantie) / **Expression de valeur:** `:product.column.1` / **Avec des expressions:**  <pre>[<br />   {<br />      "name": "product.column.1",<br />      "value": "product(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valeur renvoyée:** Renvoie le produit de `column.1`
  - **Condition:** Écart-type standard / **Expression de valeur:** `:écart-standard. colonne.1` / **Avec des expressions:**  <pre>[<br />   {<br />      "name": "standarddeviation.column.1",<br />      "value": "stddev(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valeur renvoyée:** Renvoie l'écart type de `column.1`
  - **Condition:** Variance / **Expression de valeur:** `:variance.column.1` / **Avec des expressions:**  <pre>[<br />   {<br />      "name": "variance.column.1",<br />      "value": "variance(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valeur renvoyée:** Renvoie la variance de `column.1`
  - **Condition:** Erreur type de moyenne / **Expression de valeur:** `:erreur standard de mean.column.1` / **Avec des expressions:**  <pre>[<br />   {<br />   "name": "standarderrorofmean.column.1",<br />   "value": "standard_error_of_mean(`column.1`)",<br />   "type": "aggregate"<br />   }<br />]</pre>  / **Valeur renvoyée:** Renvoie l'erreur standard de la moyenne de `column.1`
  - **Condition:** Asychité / **Expression de valeur:** `:skewness.column.1` / **Avec des expressions:**  <pre>[<br />   {<br />      "name": "skewness.column.1",<br />      "value": "skewness(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valeur renvoyée:** Renvoie l'asymétrie de `column.1`
  - **Condition:** Kurtosis / **Expression de valeur:** `:kurtosis.column.1` / **Avec des expressions:**  <pre>[<br />   {<br />      "name": "kurtosis.column.1",<br />      "value": "kurtosis(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valeur renvoyée:** Renvoie le kurtosis de `column.1`

- ** Datetime/Numeric/Text **
  - **Condition:** Nombre / **Expression de valeur:** `:count.column.1` / **Avec des expressions:**  <pre>[<br />   {<br />      "name": "count.column.1",<br />      "value": "count(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valeur renvoyée:** Renvoie le nombre total de lignes dans `column.1`
  - **Condition:** Compte distinct / **Expression de valeur:** `:countdistinct.column.1` / **Avec des expressions:**  <pre>[<br />   {<br />      "name": "count.column.1",<br />      "value": "count(distinct `column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valeur renvoyée:** Renvoie le nombre total de lignes distinctes dans `column.1`
  - **Condition:** Min / **Expression de valeur:** `:min.colonne.1` / **Avec des expressions:**  <pre>[<br />   {<br />      "name": "min.column.1",<br />      "value": "min(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valeur renvoyée:** Renvoie la valeur minimale de `column.1`
  - **Condition:** Max / **Expression de valeur:** `:max.column.1` / **Avec des expressions:**  <pre>[<br />   {<br />      "name": "max.column.1",<br />      "value": "max(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valeur renvoyée:** Renvoie la valeur maximale de `column.1`



## Conditions valides dans une ValueExpression
<a name="valid-conditions-table"></a>

Le tableau ci-dessous indique les conditions prises en charge et les expressions de valeur que vous pouvez utiliser.



- ** String **
  - **Condition:** Contains / **Expression de valeur:** contient (`colonne`, « texte ») / **Description:** Condition pour tester si la valeur de la colonne contient du texte
  - **Condition:** Ne contient pas / **Expression de valeur:** \! contient (`colonne`, « texte ») / **Description:** Condition pour tester si la valeur de la colonne ne contient pas de texte
  - **Condition:** Correspondance / **Expression de valeur:** correspondances (« colonne », « modèle ») / **Description:** Condition pour tester si la valeur de la colonne correspond au modèle
  - **Condition:** Ne correspond pas / **Expression de valeur:** \! correspondances (« colonne », « modèle ») / **Description:** Condition pour tester si la valeur de la colonne ne correspond pas au modèle
  - **Condition:** Starts with / **Expression de valeur:** startWith (`colonne`, « texte ») / **Description:** Condition pour vérifier si la valeur de la colonne commence par du texte
  - **Condition:** Ne commence pas par / **Expression de valeur:** \! startWith (`colonne`, « texte ») / **Description:** Condition pour tester si la valeur de la colonne ne commence pas par du texte
  - **Condition:** Termine par / **Expression de valeur:** EndsWith (`colonne`, « texte ») / **Description:** Condition pour tester si la valeur de la colonne se termine par du texte
  - **Condition:** Ne se termine pas par / **Expression de valeur:** \! EndsWith (`colonne`, « texte ») / **Description:** Condition pour tester si la valeur de la colonne ne se termine pas par du texte

- ** Numérique **
  - **Condition:** Inférieur à / **Expression de valeur:** `colonne` < numéro / **Description:** Condition pour tester si la valeur de la colonne est inférieure à un nombre
  - **Condition:** Inférieur ou égal à / **Expression de valeur:** `column` <= numéro / **Description:** Condition pour tester si la valeur de la colonne est inférieure ou égale au nombre
  - **Condition:** Supérieur à / **Expression de valeur:** `column` > numéro / **Description:** Condition pour tester si la valeur de la colonne est supérieure au nombre
  - **Condition:** Supérieur ou égal à / **Expression de valeur:** `column` >= numéro / **Description:** Condition pour tester si la valeur de la colonne est supérieure ou égale au nombre
  - **Condition:** Est comprise entre / **Expression de valeur:** isBetween (`colonne', MinNumber, MaxNumber) / **Description:** Condition pour tester si la valeur de la colonne est comprise entre minNumber et maxNumber
  - **Condition:** N'est pas entre / **Expression de valeur:** \! isBetween (`colonne', MinNumber, MaxNumber) / **Description:** Condition pour tester si la valeur de la colonne n'est pas comprise entre minNumber et maxNumber

- ** Booléen **
  - **Condition:** C'est vrai / **Expression de valeur:** `column` = VRAI / **Description:** Condition pour tester si la valeur de la colonne est booléenne TRUE
  - **Condition:** Est faux / **Expression de valeur:** `column` = FAUX / **Description:** Condition pour tester si la valeur de la colonne est booléenne FALSE

- ** Date/Timestamp **
  - **Condition:** Plus tôt que / **Expression de valeur:** `colonne` < « date » / **Description:** Condition pour tester si la valeur de la colonne est antérieure à la date
  - **Condition:** Antérieur ou égal à / **Expression de valeur:** `colonne` <= « date » / **Description:** Condition pour tester si la valeur de la colonne est antérieure ou égale à la date
  - **Condition:** Plus tard que / **Expression de valeur:** `colonne` > « date » / **Description:** Condition pour tester si la valeur de la colonne est postérieure à la date
  - **Condition:** Plus tard ou égal à / **Expression de valeur:** `colonne` >= « date » / **Description:** Condition pour tester si la valeur de la colonne est ultérieure ou égale à la date

- **  String/Numeric/Date/Timestamp **
  - **Condition:** C'est exactement / **Expression de valeur:** `column` = 'valeur' / **Description:** Condition pour tester si la valeur de la colonne est exactement la valeur
  - **Condition:** Is not (N’est pas) / **Expression de valeur:** `colonne` \! = « valeur » / **Description:** Condition pour tester si la valeur de la colonne n'est pas une valeur
  - **Condition:** Manque / **Expression de valeur:** IsMissing (`colonne') / **Description:** Condition pour tester si la valeur de la colonne est manquante
  - **Condition:** Ne manque pas / **Expression de valeur:** \! IsMissing (`colonne') / **Description:** Condition pour tester si la valeur de la colonne n'est pas manquante
  - **Condition:** Est valide / **Expression de valeur:** isValid (`column`, type de données) / **Description:** Condition pour tester si la valeur de la colonne est valide (la valeur est de type donnée ou peut être convertie en type de données)
  - **Condition:** N'est pas valide / **Expression de valeur:** \! isValid (`column`, type de données) / **Description:** Condition pour tester si la valeur de la colonne n'est pas valide (la valeur est de type donnée ou peut être convertie en type de données)

- ** Imbriqué **
  - **Condition:** Manque / **Expression de valeur:** IsMissing (`colonne') / **Description:** Condition pour tester si la valeur de la colonne est manquante
  - **Condition:** Ne manque pas / **Expression de valeur:** \! IsMissing (`colonne') / **Description:** Condition pour tester si la valeur de la colonne n'est pas manquante
  - **Condition:** Est valide / **Expression de valeur:** isValid (`column`, type de données) / **Description:** Condition pour tester si la valeur de la colonne est valide (la valeur est de type donnée ou peut être convertie en type de données)
  - **Condition:** N'est pas valide / **Expression de valeur:** \! isValid (`column`, type de données) / **Description:** Condition pour tester si la valeur de la colonne n'est pas valide (la valeur est de type donnée ou peut être convertie en type de données)

