Sas-functions

提供:Dev Guides
移動先:案内検索

SAS-関数

SASには、データの分析と処理に役立つさまざまな組み込み関数があります。 これらの関数は、DATAステートメントの一部として使用されます。 データ変数を引数として受け取り、別の変数に保存された結果を返します。 関数のタイプによって、取る引数の数は異なります。 ゼロの引数を受け入れる関数もあれば、固定数の変数を受け入れる関数もあります。 以下は、SASが提供する機能のタイプのリストです。

構文

SASで関数を使用するための一般的な構文は次のとおりです。

FUNCTIONNAME(argument1, argument2...argumentn)

ここで、引数は定数、変数、式、または別の関数です。

機能カテゴリ

使用法に応じて、SASの機能は次のように分類されます。

  • 数学的
  • 日時
  • キャラクター
  • 切り捨て
  • その他

数学関数

これらは、変数値に数学的計算を適用するために使用される関数です。

以下のSASプログラムは、いくつかの重要な数学関数の使用を示しています。

  • データ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;

上記のコードを実行すると、次の出力が得られます-

math_funcs_result

日付と時刻の関数

これらは、日付と時刻の値を処理するために使用される関数です。

以下のSASプログラムは、日付および時刻関数の使用を示しています。

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;

上記のコードを実行すると、次の出力が得られます-

date_time_funcs_result

キャラクター関数

これらは、文字またはテキスト値の処理に使用される関数です。

以下のSASプログラムは、文字関数の使用を示しています。

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;

上記のコードを実行すると、次の出力が得られます-

char_funcs_result

切り捨て関数

これらは、数値の切り捨てに使用される関数です。

以下のSASプログラムは、切り捨て関数の使用を示しています。

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;

上記のコードを実行すると、次の出力が得られます-

trunc_funcs_result

その他の機能

SASのさまざまな機能をいくつかの例を挙げて理解しましょう。

以下のSASプログラムは、その他の関数の使用を示しています。

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;

上記のコードを実行すると、次の出力が得られます-

Misc_funcs_result