View a markdown version of this page

OPÉRATION BOOLÉENNE - AWS Glue DataBrew Guide du développeur

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.

OPÉRATION BOOLÉENNE

Créez une nouvelle colonne en fonction du résultat de la condition logique IF. Renvoie une valeur vraie si l'expression booléenne est vraie, une valeur fausse si l'expression booléenne est fausse, ou renvoie une valeur personnalisée.

Parameters
  • trueValueExpression— Résultat lorsque la condition est remplie.

  • falseValueExpression— Résultat lorsque la condition n'est pas remplie.

  • valueExpression— Condition booléenne.

  • withExpressions— Configuration pour les résultats agrégés.

  • targetColumn : nom de la colonne qui vient d’être créée.

Vous pouvez utiliser des valeurs constantes, des références de colonne et des résultats agrégés dans trueValueExpression, false ValueExpression et ValueExpression.

Exemple Exemple : valeurs constantes

Des valeurs qui restent inchangées, comme un chiffre ou une phrase.

{ "RecipeStep": { "Action": { "Operation": "BOOLEAN_OPERATION", "Parameters": { "trueValueExpression": "It is true.", "falseValueExpression": "It is false.", "valueExpression": "`column.1` < 2000", "targetColumn": "result.column" } } } }
Exemple Exemple : références de colonnes

Valeurs qui sont des colonnes dans le jeu de données.

{ "RecipeStep": { "Action": { "Operation": "BOOLEAN_OPERATION", "Parameters": { "trueValueExpression": "`column.2`", "falseValueExpression": "`column.3`", "valueExpression": "`column.1` < `column.4`", "targetColumn": "result.column" } } } }
Exemple Exemple : résultats agrégés

Valeurs calculées par des fonctions d'agrégation. Une fonction d'agrégation effectue un calcul sur une colonne et renvoie une valeur unique.

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

Les utilisateurs doivent convertir le JSON en chaîne en s'échappant.

Notez que les noms des paramètres dans true ValueExpressionValueExpression, false et ValueExpression doivent correspondre aux noms dans WithExpressions. Pour utiliser les résultats agrégés de certaines colonnes, vous devez créer des paramètres pour celles-ci et fournir les fonctions d'agrégation.

Exemple Exemple :
{ "RecipeStep": { "Action": { "Operation": "BOOLEAN_OPERATION", "Parameters": { "trueValueExpression": "It is true.", "falseValueExpression": "It is false.", "valueExpression": "`column.1` < 2000", "targetColumn": "result.column" } } } }
Exemple Exemple : and/or

Vous pouvez utiliser et ou pour combiner plusieurs conditions.

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

Fonctions d'agrégation valides

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

Type de colonne Condition Expression de valeur Avec des expressions Valeur renvoyée

Numérique

Somme

`:sum.column.1`

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

Renvoie la somme de column.1

Mean

`:mean.column.1`

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

Renvoie la moyenne de column.1

Écart absolu moyen

`:meanabsolutedeviation.column.1`

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

Renvoie l'écart absolu moyen de column.1

Médiane

`:median.column.1`

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

Renvoie la médiane de column.1

Produit (langue française non garantie)

`:product.column.1`

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

Renvoie le produit de column.1

Écart-type standard

`:écart-standard. colonne.1`

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

Renvoie l'écart type de column.1

Variance

`:variance.column.1`

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

Renvoie la variance de column.1

Erreur type de moyenne

`:erreur standard de mean.column.1`

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

Renvoie l'erreur standard de la moyenne de column.1

Asychité

`:skewness.column.1`

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

Renvoie l'asymétrie de column.1

Kurtosis

`:kurtosis.column.1`

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

Renvoie le kurtosis de column.1

Datetime/Numeric/Text

Nombre

`:count.column.1`

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

Renvoie le nombre total de lignes dans column.1

Compte distinct

`:countdistinct.column.1`

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

Renvoie le nombre total de lignes distinctes dans column.1

Min

`:min.colonne.1`

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

Renvoie la valeur minimale de column.1

Max

`:max.column.1`

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

Renvoie la valeur maximale de column.1

Conditions valides dans une ValueExpression

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

Type de colonne Condition Expression de valeur Description

String

Contains

contient (`colonne`, « texte »)

Condition pour tester si la valeur de la colonne contient du texte

Ne contient pas

! contient (`colonne`, « texte »)

Condition pour tester si la valeur de la colonne ne contient pas de texte

Correspondance

correspondances (« colonne », « modèle »)

Condition pour tester si la valeur de la colonne correspond au modèle

Ne correspond pas

! correspondances (« colonne », « modèle »)

Condition pour tester si la valeur de la colonne ne correspond pas au modèle

Starts with

startWith (`colonne`, « texte »)

Condition pour vérifier si la valeur de la colonne commence par du texte

Ne commence pas par

! startWith (`colonne`, « texte »)

Condition pour tester si la valeur de la colonne ne commence pas par du texte

Termine par

EndsWith (`colonne`, « texte »)

Condition pour tester si la valeur de la colonne se termine par du texte

Ne se termine pas par

! EndsWith (`colonne`, « texte »)

Condition pour tester si la valeur de la colonne ne se termine pas par du texte

Numérique

Inférieur à

`colonne` < numéro

Condition pour tester si la valeur de la colonne est inférieure à un nombre

Inférieur ou égal à

`column` <= numéro

Condition pour tester si la valeur de la colonne est inférieure ou égale au nombre

Supérieur à

`column` > numéro

Condition pour tester si la valeur de la colonne est supérieure au nombre

Supérieur ou égal à

`column` >= numéro

Condition pour tester si la valeur de la colonne est supérieure ou égale au nombre

Est comprise entre

isBetween (`colonne', MinNumber, MaxNumber)

Condition pour tester si la valeur de la colonne est comprise entre minNumber et maxNumber

N'est pas entre

! isBetween (`colonne', MinNumber, MaxNumber)

Condition pour tester si la valeur de la colonne n'est pas comprise entre minNumber et maxNumber

Booléen

C'est vrai

`column` = VRAI

Condition pour tester si la valeur de la colonne est booléenne TRUE

Est faux

`column` = FAUX

Condition pour tester si la valeur de la colonne est booléenne FALSE

Date/Timestamp

Plus tôt que

`colonne` < « date »

Condition pour tester si la valeur de la colonne est antérieure à la date

Antérieur ou égal à

`colonne` <= « date »

Condition pour tester si la valeur de la colonne est antérieure ou égale à la date

Plus tard que

`colonne` > « date »

Condition pour tester si la valeur de la colonne est postérieure à la date

Plus tard ou égal à

`colonne` >= « date »

Condition pour tester si la valeur de la colonne est ultérieure ou égale à la date

String/Numeric/Date/Timestamp

C'est exactement

`column` = 'valeur'

Condition pour tester si la valeur de la colonne est exactement la valeur

Is not (N’est pas)

`colonne` ! = « valeur »

Condition pour tester si la valeur de la colonne n'est pas une valeur

Manque

IsMissing (`colonne')

Condition pour tester si la valeur de la colonne est manquante

Ne manque pas

! IsMissing (`colonne')

Condition pour tester si la valeur de la colonne n'est pas manquante

Est valide

isValid (`column`, type de données)

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)

N'est pas valide

! isValid (`column`, type de données)

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é

Manque

IsMissing (`colonne')

Condition pour tester si la valeur de la colonne est manquante

Ne manque pas

! IsMissing (`colonne')

Condition pour tester si la valeur de la colonne n'est pas manquante

Est valide

isValid (`column`, type de données)

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)

N'est pas valide

! isValid (`column`, type de données)

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)