Home
» Power BI
»
Tutorial de filtro de Power Query por una primera letra o carácter específico
Tutorial de filtro de Power Query por una primera letra o carácter específico
Este tutorial de filtro de Power Query demostrará un par de enfoques para resolver el Desafío de filtro de tabla de Excel BI. El objetivo de este desafío es filtrar los nombres donde la segunda palabra comienza con la letra "C".
Vayamos al editor de Power Query para desglosar este problema. Usaremos la interfaz de usuario y sus herramientas tanto como sea posible y buscaremos una segunda palabra que comience con la letra C. En la pestaña Transformar , iremos a Extraer y seleccionaremos Texto después del delimitador .
En la ventana Texto después del delimitador de arriba, podemos ingresar un espacio allí, presionar Aceptar y obtener la lista a continuación. El resultado a continuación es, por supuesto, diferente de lo que queremos, pero crea una sintaxis clave para nosotros.
Mantengamos nuestra letra inicial en cada una de estas cadenas. Entonces, en la barra de fórmulas, agregaremos otra función Text.Start , conservaremos un carácter y presionaremos la marca de verificación.
Todo lo que queda es comparar este resultado con la letra C. Al final de la ecuación, podemos decir = C y presionar esa marca de verificación nuevamente .
Hemos creado con éxito la lógica que podemos usar para filtrar nuestra tabla. A continuación, debemos copiar la sintaxis en la barra de fórmulas ( Ctrl + C ) y marcar nuestro paso con una X.
Después de eso, creamos un filtro ficticio.
Volvemos a pegar (Ctrl + V) la lógica que acabamos de crear, recortamos (ctrl + x) la referencia a la columna y borramos la última parte. Y lo que obtenemos es la imagen de abajo.
Cuando resalta ese último corchete, y si pertenece a la función Table.SelectRows , entonces está listo para comenzar. Finalmente, en lugar de poner un guión bajo después de Text.AfterDelimeter , pegamos esa selección de columna y presionamos esa marca de verificación.
¡Y vemos a continuación que funciona!
Enfoque de filtro Power Query # 2
Ahora, para nuestro segundo enfoque en este tutorial de filtro de Power Query, haremos algo ligeramente diferente. Usaremos varias funciones diferentes de Power Query , pero también haremos que la comparación distinga entre mayúsculas y minúsculas.
La mayor parte de la estructura ya se encuentra en nuestra barra de fórmulas anterior. Así que copiaremos esa sintaxis resaltada arriba y presionaremos ese fx al frente para que podamos usarlo para construir nuestro segundo enfoque.
Luego borramos la referencia del paso anterior ("Filas filtradas") en la imagen de arriba y pegamos nuestra sintaxis para reemplazarla. Y finalmente, presionamos esa marca de verificación nuevamente.
Dividir palabras en una lista
En lugar del Text.AfterDelimeter dentro de la barra de fórmulas, dividiremos las palabras en una lista usando Text.Split . Y eso incluye dividir la columna de nombre y en un espacio como a continuación:
Cada palabra tiene su posición en la lista, y para extraer la palabra en la segunda posición, podemos usar el acceso a elementos. Entonces, en un conjunto de corchetes, podemos referirnos a su posición de índice basada en cero. Para llegar a algo que está en la posición número dos, tenemos que ingresar un 1 aquí.
Pero también queremos proteger esto porque si en un momento dado, se ingresa una cadena que contiene solo una palabra en ese momento, no habrá un segundo elemento en esa lista y devolverá un error.
Cambiar el acceso de elemento obligatorio a opcional resolverá posibles problemas futuros. Para hacer eso, todo lo que tenemos que hacer es agregar un signo de interrogación ( ? ) al final.
Agregar el signo de interrogación cambia el acceso de elemento requerido a acceso de elemento opcional. Esto significa que si un elemento no existe en la lista, se devuelve un valor nulo en lugar de un error.
También cambiemos la función Text.Start porque queremos usar una función que tiene un parámetro de comparación opcional. Entonces, en lugar de Text.Start, usaremos Text.StartsWith , agregaremos una coma después del signo de interrogación y pondremos "C" , la subcadena que estamos buscando.
Luego podemos usar esa función Comparar, así que escribimos y seleccionamos Comparer.OrdinalIgnoreCase . Y recuerde agregar los paréntesis de cierre a la tabla de las filas seleccionadas.
Y casi hemos terminado aquí. Todo lo que queda por hacer es ver si esto devuelve verdadero, así que agreguemos = verdadero al final de la fórmula y presionemos esa marca de verificación. ¡Ahora el proceso está completo!
En este tutorial de filtro de Power Query, ha visto dos enfoques para un desafío de filtro de tabla. El primero usa el texto después del delimitador de la pestaña Transformar junto con las funciones Table.SelectRows y Text.Start .
Mientras tanto, el segundo renuncia al uso de Text After Delimiter y reemplaza la función Text.Split con Text.Start para dividir palabras en una lista. También hace uso de la función de comparación Comparer.OrdinalIgnoreCase .
¡Puede explorar ambas opciones de filtro de tabla para encontrar el enfoque que más le convenga!