Compartir a través de


Agregar columna condicional

Con Power Query, puede crear nuevas columnas cuyos valores se basan en una o varias condiciones aplicadas a otras columnas de la tabla.

El comando Columna condicional se encuentra en la pestaña Agregar columna , en el grupo General .

Captura de pantalla de la cinta de opciones de Power Query con la pestaña Agregar columna abierta y la opción Columna condicional resaltada.

Adición de una columna condicional

En este ejemplo, usará la tabla que se muestra en la siguiente imagen.

Captura de pantalla de la tabla de ejemplo que se va a usar al agregar una columna condicional.

En esta tabla, tiene un campo que le proporciona CustomerGroup. También tiene precios diferentes aplicables a ese cliente en los campos Precio de nivel 1, Precio de nivel 2 y Precio de nivel 3 . En este ejemplo, el objetivo es crear una nueva columna con el nombre Final Price en función del valor encontrado en el campo CustomerGroup . Si el valor del campo CustomerGroup es igual a 1, quiere usar el valor del campo Precio de nivel 1 ; De lo contrario, se usa el valor del precio del nivel 3.

Para agregar esta columna condicional, seleccione Columna condicional. En el cuadro de diálogo Agregar columna condicional , defina las secciones siguientes:

  • Nuevo nombre de columna: define el nombre de la nueva columna. En este ejemplo, use el nombre Final Price.
  • Cláusulas condicionales: define las cláusulas condicionales. Puede agregar más cláusulas seleccionando Agregar cláusula. Cada cláusula condicional se prueba en el orden que se muestra en el cuadro de diálogo, de arriba a abajo. Cada cláusula tiene cuatro partes:
    • Nombre de columna: en la lista desplegable, seleccione la columna que se va a usar para la prueba condicional. En este ejemplo, seleccione CustomerGroup.
    • Operador: seleccione el tipo de prueba o operador para la prueba condicional. En este ejemplo, el valor de la columna CustomerGroup debe ser igual a 1, por lo que seleccione igual.
    • Valor: escriba un valor o seleccione una columna que se usará para la prueba condicional. En este ejemplo, escriba 1.
    • Salida: si la prueba es positiva, el valor especificado aquí o la columna seleccionada es la salida. En este ejemplo, si el valor CustomerGroup es igual a 1, el valor De salida debe ser el valor de la columna Precio de nivel 1 .
  • Cláusula Final Else: si ninguna de las cláusulas anteriores produce una prueba positiva, la salida de esta operación es la definida aquí, como un valor especificado manualmente o un valor de una columna. En este caso, la salida es el valor de la columna Precio de nivel 3 .

Captura de pantalla del cuadro de diálogo Agregar columna condicional con todos los valores de ejemplo rellenados.

El resultado de esa operación proporciona una nueva columna Precio final que contiene valores de las columnas Precio de nivel 1 y Precio de nivel 3.

Captura de pantalla de la tabla con la columna Precio final que contiene el tipo de datos Any generado por las cláusulas condicionales de ejemplo.

Nota:

Las nuevas columnas condicionales no tienen definido un tipo de datos. Puede agregar un nuevo paso para definir un tipo de datos para esta columna recién creada siguiendo los pasos descritos en Tipos de datos en Power Query.

Adición y organización de varias cláusulas

En este ejemplo, vamos a cambiar el objetivo. Las nuevas cláusulas condicionales son:

  • Si el valor de la columna CustomerGroup es igual a 1, la salida es el valor de la columna Precio de nivel 1 .
  • Si el valor de la columna CustomerGroup es igual a 2, la salida es el valor de la columna Precio de nivel 2 .
  • Si ninguna de las pruebas anteriores es positiva, el resultado es el valor de la columna Precio de nivel 3 .

Captura de pantalla de Agregar columna condicional con dos cláusulas condicionales diferentes definidas para los valores de la columna Precio final.

Nota:

Al final de cada cláusula, puede seleccionar el botón de puntos suspensivos (...) para eliminar, subir o bajar la cláusula.

El resultado de esa operación proporciona la columna Precio Final con los precios de las columnas Precio de Nivel 1, Precio de Nivel 2 y Precio de Nivel 3.

Captura de pantalla de la tabla con el precio final que contiene el tipo de datos Any generado por las varias cláusulas condicionales.