Diferencia entre la instruccion IF vs Where
Las personas que trabajamos con el lenguaje SAS muchas veces nos preguntamos que es mas rápido cuando de filtrar datos se trata.
En SAS Enterprise Guide existen las palabras reservadas IF y Where. De manera sencilla vamos a explicar como funciona cada una de ellas
WHERE
Se determinan cuando se compila el paso DATA . A medida que se ejecuta el paso DATA, los datos entrantes solo filtran a aquellos registros que coinciden con la condición WHERE, por lo que solo esos registros se cargan en el vector de datos del programa (PDV). Esto da como resultado menos iteraciones a través del código del paso DATA, pero no brinda la oportunidad de tomar decisiones "dinámicas" sobre qué registros examinar.
IF
La instrucción IF se evalúa en tiempo de ejecución y opera sobre las variables una vez que ya están en el PDV. Cuando se cumple la condición IF, la observación actual se mantiene para salida eventual. A diferencia de la instrucción WHERE, la instrucción IF puede examinar los valores de las nuevas variables que se definen dentro del paso.
No hay comentarios:
Publicar un comentario