SAS - Funktionen

SAS verfügt über eine Vielzahl integrierter Funktionen, die bei der Analyse und Verarbeitung der Daten helfen. Diese Funktionen werden als Teil der DATA-Anweisungen verwendet. Sie nehmen die Datenvariablen als Argumente und geben das Ergebnis zurück, das in einer anderen Variablen gespeichert ist. Je nach Art der Funktion kann die Anzahl der Argumente variieren. Einige Funktionen akzeptieren Nullargumente, während andere eine feste Anzahl von Variablen akzeptieren. Unten finden Sie eine Liste der Arten von Funktionen, die SAS bietet.

Syntax

Die allgemeine Syntax für die Verwendung einer Funktion in SAS lautet wie folgt.

FUNCTIONNAME(argument1, argument2...argumentn)

Hier kann das Argument eine Konstante, eine Variable, ein Ausdruck oder eine andere Funktion sein.

Funktionskategorien

Abhängig von ihrer Verwendung werden die Funktionen in SAS wie folgt kategorisiert.

  • Mathematical
  • Datum (und Uhrzeit
  • Character
  • Truncation
  • Miscellaneous

Mathematische Funktionen

Mit diesen Funktionen werden einige mathematische Berechnungen auf die Variablenwerte angewendet.

Beispiele

Das folgende SAS-Programm zeigt die Verwendung einiger wichtiger mathematischer Funktionen.

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;

Wenn der obige Code ausgeführt wird, erhalten wir die folgende Ausgabe:

Datums- und Uhrzeitfunktionen

Mit diesen Funktionen werden Datums- und Uhrzeitwerte verarbeitet.

Beispiele

Das folgende SAS-Programm zeigt die Verwendung von Datums- und Uhrzeitfunktionen.

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;

Wenn der obige Code ausgeführt wird, erhalten wir die folgende Ausgabe:

Zeichenfunktionen

Mit diesen Funktionen werden Zeichen- oder Textwerte verarbeitet.

Beispiele

Das folgende SAS-Programm zeigt die Verwendung von Zeichenfunktionen.

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;

Wenn der obige Code ausgeführt wird, erhalten wir die folgende Ausgabe:

Kürzungsfunktionen

Mit diesen Funktionen werden numerische Werte abgeschnitten.

Beispiele

Das folgende SAS-Programm zeigt die Verwendung von Kürzungsfunktionen.

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;

Wenn der obige Code ausgeführt wird, erhalten wir die folgende Ausgabe:

Verschiedene Funktionen

Lassen Sie uns nun die verschiedenen Funktionen von SAS anhand einiger Beispiele verstehen.

Beispiele

Das folgende SAS-Programm zeigt die Verwendung verschiedener Funktionen.

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;

Wenn der obige Code ausgeführt wird, erhalten wir die folgende Ausgabe: