View a markdown version of this page

OPERACIÓN_BOOLEANA - AWS Glue DataBrew Guía para desarrolladores

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

OPERACIÓN_BOOLEANA

Cree una nueva columna en función del resultado de la condición lógica IF. Devuelve el valor verdadero si la expresión booleana es verdadera, el valor falso si la expresión booleana es falsa o devuelve un valor personalizado.

Parameters
  • trueValueExpression— Resultado cuando se cumple la condición.

  • falseValueExpression— Resultado cuando no se cumple la condición.

  • valueExpression— Condición booleana.

  • withExpressions— Configuración para resultados agregados.

  • targetColumn: un nombre para la columna recién creada.

Puede utilizar valores constantes, referencias a columnas y resultados agregados en trueValueExpression, false ValueExpression y ValueExpression.

ejemplo Ejemplo: valores constantes

Valores que permanecen sin cambios, como un número o una oración.

{ "RecipeStep": { "Action": { "Operation": "BOOLEAN_OPERATION", "Parameters": { "trueValueExpression": "It is true.", "falseValueExpression": "It is false.", "valueExpression": "`column.1` < 2000", "targetColumn": "result.column" } } } }
ejemplo Ejemplo: referencias a columnas

Valores que son columnas del conjunto de datos.

{ "RecipeStep": { "Action": { "Operation": "BOOLEAN_OPERATION", "Parameters": { "trueValueExpression": "`column.2`", "falseValueExpression": "`column.3`", "valueExpression": "`column.1` < `column.4`", "targetColumn": "result.column" } } } }
ejemplo Ejemplo: resultados agregados

Valores que se calculan mediante funciones de agregación. Una función de agregado realiza un cálculo en una columna y devuelve un único valor.

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

Los usuarios deben convertir el JSON en una cadena escapando.

Tenga en cuenta que los nombres de los parámetros en true ValueExpressionValueExpression, false y ValueExpression deben coincidir con los nombres de WithExpressions. Para utilizar los resultados agregados de algunas columnas, debe crear parámetros para ellas y proporcionar las funciones de agregado.

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

Puede usar y o para combinar varias condiciones.

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

Funciones de agregación válidas

La siguiente tabla muestra todas las funciones de agregado válidas que se pueden usar en una operación booleana.

Tipo de columna Condición Expresión de valor Con expresiones Valor devuelto

Numérico

Sum

`:sum.column.1`

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

Devuelve la suma de column.1

Media

`:mean.column.1`

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

Devuelve la media de column.1

Desviación absoluta media

`:desviación absoluta media. Column.1`

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

Devuelve la desviación absoluta media de column.1

Median

`:median.column.1`

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

Devuelve la mediana de column.1

Producto

`:product.column.1`

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

Devuelve el producto de column.1

Desviación estándar

`:standarddeviation.column.1`

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

Devuelve la desviación estándar de column.1

Varianza

`:variance.column.1`

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

Devuelve la varianza de column.1

Error estándar de la media

`:error estándar de mean.column.1`

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

Devuelve el error estándar de la media de column.1

Asimetría

`:asimetría.column.1`

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

Devuelve la asimetría de column.1

Curtosis

`:kurtosis.column.1`

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

Devuelve la curtosis de column.1

Datetime/Numeric/Text

Recuento

`:count.column.1`

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

Devuelve el número total de filas de column.1

Recuento distinto

`:countdistinct.column.1`

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

Devuelve el número total de filas distintas de column.1

Mínimo

`:min.column.1`

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

Devuelve el valor mínimo de column.1

Máximo

`:max.column.1`

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

Devuelve el valor máximo de column.1

Condiciones válidas en una ValueExpression

En la siguiente tabla se muestran las condiciones admitidas y las expresiones de valores que puede utilizar.

Tipo de columna Condición Expresión de valor Description (Descripción)

Cadena

Contiene

contiene (`columna`, 'texto')

Condición para comprobar si el valor de la columna contiene texto

No contiene

! contiene (`columna`, 'texto')

Condición para comprobar si el valor de la columna no contiene texto

Coincide

coincidencias (`columna`, 'patrón')

Condición para comprobar si el valor de la columna coincide con el patrón

No coincide

! coincidencias (`columna`, 'patrón')

Condición para comprobar si el valor de la columna no coincide con el patrón

Empieza por

StartsWith (`columna`, 'texto')

Condición para comprobar si el valor de la columna comienza con texto

No comienza con

! StartsWith (`columna`, 'texto')

Condición para comprobar si el valor de la columna no comienza con texto

Acaba con

Termina con (`columna`, 'texto')

Condición para comprobar si el valor de la columna termina con texto

No termina en

! Termina con (`columna`, 'texto')

Condición para comprobar si el valor de la columna no termina con texto

Numérico

Menor que

`columna` < número

Condición para comprobar si el valor de la columna es menor que un número

Menor o igual que

`columna` <= número

Condición para comprobar si el valor de la columna es menor o igual que un número

Mayor que

`columna` > número

Condición para comprobar si el valor de la columna es mayor que un número

Mayor o igual que

`columna` >= número

Condición para comprobar si el valor de la columna es mayor o igual que un número

Está entre

isBetween (`column`, minNumber, maxNumber)

Condición para comprobar si el valor de la columna está entre minNumber y maxNumber

No está entre

! isBetween (`columna`, número mínimo, número máximo)

Condición para comprobar si el valor de la columna no está entre minNumber y maxNumber

Booleano

¿Es cierto

`column` = VERDADERO

Condición para comprobar si el valor de la columna es booleano TRUE

Es falso

`column` = FALSO

Condición para comprobar si el valor de la columna es booleano FALSO

Date/Timestamp

Antes de

`column` < 'fecha'

Condición para comprobar si el valor de la columna es anterior a la fecha

Anterior o igual a

`columna` <= 'fecha'

Condición para comprobar si el valor de la columna es anterior o igual a la fecha

Más tarde que

`columna` > 'fecha'

Condición para comprobar si el valor de la columna es posterior a la fecha

Mayor o igual a

`columna` >= 'fecha'

Condición para comprobar si el valor de la columna es posterior o igual a la fecha

String/Numeric/Date/Timestamp

Es exactamente

`column` = 'valor'

Condición para comprobar si el valor de la columna es exactamente el valor

Is not

`columna`! = 'valor'

Condición para comprobar si el valor de la columna no es un valor

Falta

Falta (`column`)

Condición para comprobar si falta el valor de la columna

No falta

! Falta (`column`)

Condición para comprobar si no falta el valor de la columna

¿Es válido

IsValid (`column`, tipo de datos)

Condición para comprobar si el valor de la columna es válido (el valor es de tipo de datos o se puede convertir a tipo de datos)

No es válido

! IsValid (`column`, tipo de datos)

Condición para comprobar si el valor de la columna no es válido (el valor es de tipo de datos o se puede convertir a tipo de datos)

Anidado

Falta

Falta (`column`)

Condición para comprobar si falta el valor de la columna

No falta

! Falta (`column`)

Condición para comprobar si no falta el valor de la columna

¿Es válido

IsValid (`column`, tipo de datos)

Condición para comprobar si el valor de la columna es válido (el valor es de tipo de datos o se puede convertir a tipo de datos)

No es válido

! IsValid (`column`, tipo de datos)

Condición para comprobar si el valor de la columna no es válido (el valor es de tipo de datos o se puede convertir a tipo de datos)