SAS – Funciones

SAS tiene muchas funciones integradas para ayudarlo a analizar y procesar datos. Estas funciones se utilizan como parte de las declaraciones de DATOS. Toman las variables de datos como argumentos y devuelven el resultado, que se almacena en otra variable. Dependiendo del tipo de función, el número de argumentos aceptados puede variar. Algunas funciones toman argumentos nulos, mientras que otras toman un número fijo de variables. A continuación se muestra una lista de los tipos de funciones que proporciona SAS.

Sintaxis

La sintaxis general para usar una función en SAS se muestra a continuación.

FUNCTIONNAME(argument1, argument2...argumentn)

Aquí, el argumento puede ser una constante, variable, expresión u otra función.

Categorías de funciones

Según su uso, las funciones de SAS se clasifican en las siguientes categorías.

  • Matemático
  • fecha y hora
  • Personaje
  • Truncamiento
  • miscelánea

Funciones matemáticas

Estas son funciones que se utilizan para aplicar algunos cálculos matemáticos a los valores de las variables.

Ejemplos de

El programa SAS a continuación muestra el uso de algunas funciones matemáticas importantes.

data Math_functions;

v1=21; v2=42; v3=13; v4=10; v5=29;

/* Get Maximum value */
max_val = MAX(v1,v2,v3,v4,v5);

/* Get Minimum value */
min_val = MIN (v1,v2,v3,v4,v5);

/* Get Median value */
med_val = MEDIAN (v1,v2,v3,v4,v5);

/* Get a random number */
rand_val = RANUNI(0);

/* Get Square root of sum of the values */
SR_val= SQRT(sum(v1,v2,v3,v4,v5));

proc print data = Math_functions noobs;
run;

Cuando se ejecuta el código anterior, obtenemos el siguiente resultado:

math_funcs_result

Funciones de fecha y hora

Estas son funciones que se utilizan para procesar valores de fecha y hora.

Ejemplos de

El siguiente programa SAS demuestra el uso de funciones de fecha y hora.

data date_functions;
INPUT @1 date1 date9. @11 date2 date9.;
format date1 date9.  date2 date9.;

/* Get the interval between the dates in years*/
Years_ = INTCK('YEAR',date1,date2);

/* Get the interval between the dates in months*/
months_ = INTCK('MONTH',date1,date2);

/* Get the week day from the date*/
weekday_ =  WEEKDAY(date1);

/* Get Today's date in SAS date format */
today_ = TODAY();

/* Get current time in SAS time format */
time_ = time();
DATALINES;
21OCT2000 16AUG1998
01MAR2009 11JUL2012
;
proc print data = date_functions noobs;
run;

Cuando se ejecuta el código anterior, obtenemos el siguiente resultado:

date_time_funcs_result

Funciones de los personajes

Estas son funciones que se utilizan para procesar caracteres o valores de texto.

Ejemplos de

El siguiente programa SAS demuestra el uso de funciones simbólicas.

data character_functions;

/* Convert the string into lower case */
lowcse_ = LOWCASE('HELLO');
  
/* Convert the string into upper case */
upcase_ = UPCASE('hello');
  
/* Reverse the string */
reverse_ = REVERSE('Hello');
  
/* Return the nth word */
nth_letter_ = SCAN('Learn SAS Now',2);
run;

proc print data = character_functions noobs;
run;

Cuando se ejecuta el código anterior, obtenemos el siguiente resultado:

char_funcs_result

Funciones de truncamiento

Estas son funciones que se utilizan para truncar valores numéricos.

Ejemplos de

El siguiente programa SAS demuestra el uso de las funciones de truncamiento.

data trunc_functions;

/* Nearest greatest integer */
ceil_ = CEIL(11.85);
  
/* Nearest greatest integer */
floor_ = FLOOR(11.85);
  
/* Integer portion of a number */
int_ = INT(32.41);
  
/* Round off to nearest value */
round_ = ROUND(5621.78);
run;

proc print data = trunc_functions noobs;
run;

Cuando se ejecuta el código anterior, obtenemos el siguiente resultado:

trunc_funcs_result

Funciones misceláneas

Entendamos ahora las diversas funciones SAS con algunos ejemplos.

Ejemplos de

El siguiente programa SAS demuestra el uso de varias funciones.

data misc_functions;

/* Nearest greatest integer */
state2=zipstate('01040');
 
/* Amortization calculation */
payment = mort(50000, . , .10/12,30*12);

proc print data = misc_functions noobs;
run;

Cuando se ejecuta el código anterior, obtenemos el siguiente resultado:

Misc_funcs_result

🚫