Compartir vía


Agregar una columna condicional

Con el Power Query, puedes crear nuevas columnas cuyos valores se basan en una o más condiciones aplicadas a otras columnas de la tabla.

El comando de la columna condicional se encuentra en la pestaña de Añadir columna, en el grupo general.

Screenshot of the Power Query ribbon with the Add column tab open and the Conditional column option emphasized.

Agregar una columna condicional

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

Screenshot of the sample table to use when adding a conditional column.

En esta tabla, tiene un campo que le da el Grupo de clientes. También tiene diferentes precios aplicables a ese cliente en los campos del Precio del Nivel 1, Precio del Nivel 2, y Precio del Nivel 3. En este ejemplo, el objetivo es crear una nueva columna con el nombre del Precio Final basado en el valor encontrado en el campo del Grupo de clientes. Si el valor en el campo del Grupo de clientes es igual a 1, querrás usar el valor del campo del Precio del Nivel 1; de lo contrario, usa el valor del campo del Precio del Nivel 3.

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

  • Nuevo nombre de la columna: puedes definir el nombre de la nueva columna. En este ejemplo, usas el nombre Precio Final.
  • Cláusulas condicionales: define las cláusulas condicionales. Puede agregar más cláusulas seleccionando Añadir 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 la columna: En la lista desplegable, seleccione la columna que desea usar para la prueba condicional. Para este ejemplo, seleccione Grupo de clientes.
    • Operador: Seleccione el tipo de prueba o el operador para la prueba condicional. En este ejemplo, el valor de la columna del Grupo de clientes tiene que ser igual a 1, así que seleccione iguales.
    • Valor: introduce un valor o seleccionar una columna que se utilizará para la prueba condicional. Para este ejemplo, escriba 1.
    • Salida: si la prueba es positiva, el valor ingresado aquí o la columna seleccionada es la salida. Para este ejemplo, si el valor del Grupo de clientes es igual a 1, su valor de Salida debe ser el valor de la columna del Precio de Nivel 1.
  • Cláusula final de sino: si ninguna de las cláusulas anteriores arroja una prueba positiva, la salida de esta operación es la que se define aquí, como un valor ingresado manualmente o un valor de una columna. En este caso, la salida es el valor de la columna Precio de Nivel 3.

Screenshot of the Add conditional column dialog with all of the example values filled in.

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.

Screenshot of the table with the Final Price column containing the Any data type produced by the example conditional clauses.

Nota:

Las columnas condicionales nuevas no tienen un tipo de datos definido. 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 de Power Query.

Agregar y organizar varias cláusulas

Para este ejemplo, cambiemos su objetivo. Sus nuevas cláusulas condicionales son:

  • Si el valor de la columna Grupo de clientes es igual a 1, la Salida es el valor de la columna del Precio del Nivel 1.
  • Si el valor de la columna Grupo de clientes es igual a 2, la Salida es el valor de la columna del Precio del Nivel 2.
  • Si ninguna de las pruebas anteriores es positiva, la Salida es el valor de la columna Precio del Nivel 3.

Screenshot of Add conditional column with two different conditional clauses defined for the values of the Final Price column.

Nota:

Al final de cada cláusula, puede seleccionar el botón de puntos suspensivos (...) para eliminar, mover hacia arriba o hacia abajo 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.

Screenshot of the table with the Final Price that contains the Any data type produced by the multiple conditional clauses.