Tiempo de lectura:1 Minutos, 39 Segundos

En este articulo vamos a filtrar filas utilizando código Java (snippet) con KNIME. Insertaremos el nodo Java Snippet Row Filter y junto a los nodos Excel Reader y Excel Writer filtraremos la información. Partiremos de este otro articulo donde leíamos y escribíamos en excel, aunque puedes adaptarlo a tu Workflow.

Especificaciones del entorno

Origen de datos

Nuestro origen de datos será un excel (recuerda que puedes descargarte este excel y el workflow con el ejemplo al final del articulo). A continuación puedes ver las primeras filas de este fichero.

Objetivo

Nuestro objetivo es generar un excel quedándonos solo con las filas de la columna Región que sean igual West y East.

Paso a paso

  • Busca y arrastra a tu Workflow el nodo Java Snippet Row Filter ubicado dentro de la categoria Scripting > Java
  • Engancha el nodo Java Snippet Row Filter al nodo Excel Reader y este Excel Writer.

Configuración Java Snippet Row Filter

  • Haz doble clic sobre el nodo Java Snippet Row Filter para configurarlo.
  • Escribe tu código en la parte central utilizando los campos o variables de entrada disponibles.

Con esto conseguimos que todas aquellas filas que su región sea West o East se incluyan en el excel de salida.

Explicación código Java

El código Java que vamos a incluir en el ejemplo es uno de lo más sencillos, pero vamos a explicarlo linea a linea:

boolean respuesta = false;

if($Region$.equals("West") ||
   $Region$.equals("East")
   )
   	respuesta = true;

return respuesta;
  • Línea 1: establecemos a falso una variable de tipo booleano llamada respuesta.
  • Línea 3,4,5: construimos un condicional donde establecemos que tiene que comprobar si el campo región es igual a West o East.
  • Línea 6: si se cumple la condición cambiamos la variable respuesta a true.
  • Línea 8: devolvemos el valor de la variable.

Ejecuta el workflow y observa los resultados o descargate este Workflow de ejemplo, modifica las rutas del excel de origen/destino y pruébalo tú mismo.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Este sitio está protegido por reCAPTCHA y se aplican la política de privacidad y los términos de servicio de Google.

Perfiles en Redes Sociales