Download Tutorial de SAS
Transcript
Sintaxis:
DO [ indice = n TO m [ BY k ] ];
(sentencias SAS)
END ;
Observaciones:
-Si la sentencia DO aparece sin indice, se ejecutan las sentencias entre DO y END, al
llegar a la sentencia DO.
-En otro caso, el grupo de sentencias entre las sentencias DO y END se ejecuta (en una
misma ejecución de paso DATA) mientras el valor de la variable índice no supere m.
-n, m y k pueden ser valores numéricos o variables numéricas que tomen algún valor.
-Se puede especificar como valores posibles del índice una lista de valores:
DO indice = val1, ... valn ;
-La variable índice puede ser numérica o carácter.
-Se puede salir de un bucle con una sentencia GOTO o GO TO.
-Se pueden anidar bucles.
Ejemplo:
DATA ventas;
INFILE 'fichero.ventas';
INPUT empresa ventas1-ventas4;
ARRAY vent{4} ventas1-ventas4;
ventast = 0;
DO i = 1 TO 4;
ventast = ventast + vent{i};
end;
DROP i;
Sentencia GOTO o GO TO.
Sintaxis:
GOTO etiqueta ;
equivale a:
GO TO etiqueta ;
Hay otra sentencia en el paso DATA que comienza por:
etiqueta: sentencia-SAS ;
La sentencia GO TO o GOTO lleva el flujo de control a la sentencia referenciada por la
etiqueta.
Otros bloques de sentencias16
16
-WHILE chequea la condición antes de la ejecución de la primera sentencia del DO.
-UNTIL chequea la condición justo antes de la sentencia END. Por tanto, se ejecuta al menos una vez.
Bloque SELECT / WHEN / OTHERWISE / END.
U.C.M./Servicio Informático de Apoyo Docencia e Investigación. C. Bravo
SAS® pág 54/83