Antes que nada gracias por la ayuda que puedan aportar, soy nuevo en Knime estoy migrando mis flujos de SPSS Modeler y esta es mi primer duda que no pude resolver acudiendo a tutoriales, estoy tratando de obtener un resultado basado en una condición que implica fechas, pero no he encontrado en nodo que me ayude con esto, mi codigo (en modeler) es el siguiente:
if (Fecha_Expiración < @TODAY and Estatus_Contrato = “Active”) then “Completed” elseif
(Fecha_Expiración < @TODAY and Estatus_Contrato /= “Active”) then Estatus_Contrato elseif
Fecha_Expiración >= @TODAY then Estatus_Contrato elseif
(@NULL(Fecha_Expiración) or Fecha_Expiración = “”) then Estatus_Contrato else
“validar”
endif
Antes que nada darte la bienvenida al foro de KNIME.
Tanto en este forum como en el KNIME HUB podrás encontrar ejemplos de workflows y otros recursos para que tu viaje con KNIME sea largo y productivo
En relación con tu pregunta yo usaría el nodo Column Expression, se trata de una extensión de KNIME que puedes instalar directamente en tu PC haciendo click en FIle > Install KNIME extensions…>KNIME Labs Extensions > KNIME Expressions. Luego sigue los pasos para instalarla y resetea KNIME.
En esta captura de pantalla puedes ver como sería la configuración del nodo
if(and(column("Fecha de expiración") < today(),column("Estatus_Contrato")=="Active"){
"Completed"
}
else if(and(column("Fecha de expiración")< today(), column("Estatus_Contrato")!="Active"){
column("Estatus_Contrato")
}
Añadiendo las condiciones que faltan.
Claramente depende también como sea el formato de la columna que contiene la fecha, a lo mejor tienes que usar un nodo antes del Column Expression o modificar ligeramente la expresión.
Mil gracias Diego, esa fue la solución, respecto al Column Expression, creo es nodo muy versátil, tendrás algún material para saber qué se puede hacer con él? (por ejemplo el if no viene contenido en el apartado de function, de no ser por ti, no sabía que se podía utilizar ahí)
Me alegro que fuera de ayuda, yo también creo que Column Expression es un nodo muy útil .
Generalmente para sacar el máximo partido a KNIME y conocer cómo funcionan los nodos te recomiendo un par de cosas que a mí me han ayudado muchas veces:
KNIME Community Hub: como te comentaba en al anterior post si tu buscas el nodo Column Expression en la barra de búsqueda del Hub y luego haces click en “Related workflows and nodes”
En el panel de configuración de cada nodo puedes encontrar el icono . Haciendo click se abrirá otra ventana con información exhaustiva sobre las funcionalidades del nodo.
Por ejemplo, para el Column Expression node puedes encontrar el link para consultar la grámatica y sintaxis de las expresiones usadas en el nodo:
Es verdad que no está el IF en este caso, seguramente porque hay otros nodos que pueden hacer el mismo trabajo, ej. el Rule Engine node sin tener que “escribir” código adicional.