View a markdown version of this page

CASE_OPERATION - 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.

CASE_OPERATION

Cree una nueva columna en función del resultado de la condición lógica CASE. La operación de caso examina las condiciones de cada caso y devuelve un valor cuando se cumple la primera condición. Una vez que se cumple una condición, la operación deja de leer y devuelve el resultado. Si no se cumple ninguna condición, devuelve el valor predeterminado.

Parameters
  • valueExpression— Condiciones.

  • withExpressions— Configuración para resultados agregados.

  • targetColumn— Nombre de la columna recién creada.

ejemplo Ejemplo

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

Funciones de agregación válidas

La siguiente tabla muestra todas las funciones de agregación válidas que se pueden utilizar en una operación de caso.

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)