Sas で floor 関数を使用する方法


SAS でFLOOR関数を使用すると、数値以下の最大の整数を返すことができます。

次の例は、 FLOOR関数を実際に使用する方法を示しています。

: SAS のFLOOR関数の逆はCEIL関数です。

例: SAS で FLOOR 関数を使用する方法

SAS に、会社のさまざまな従業員が販売した平均的な商品に関する情報を含む次のデータセットがあるとします。

 /*create dataset*/
data my_data;
    input employee $avg_sales;
    datalines ;
Andy 12.3
Bob 14.5
Chad 8.44
Derrick 12.87
Eric 8.01
Frank 10
George 11.5
Henry 11.99
Isaac 7.64
;
run ;

/*view dataset*/
proc print data =my_data;

FLOOR関数を使用すると、 avg_sales列の各数値以下の最大の整数を返すことができます。

 /*create new dataset*/
data new_data;
    set my_data;
    floor_avg_sales = floor (avg_sales);
run ;

/*view new dataset*/
proc print data =new_data;

Floor_avg_salesという新しい列には、 avg_sales列の各数値以下の最大の整数が含まれることに注意してください。

例えば:

  • 12.30 は12になります。
  • 14.50 は14になります。
  • 8.44 は8になります。
  • 12.87 は12になります。

等々。

FLOOR 関数と INT 関数の違い

SAS のINT関数は、数値の整数値部分を返します。

正の値の場合、 FLOOR関数とINT関数はまったく同じ数値を返します。

ただし、 FLOOR関数とINT関数は、負の数に対して異なる値を返します。

例として次のデータセットを考えてみましょう。

 /*create dataset*/
data my_data;
    input employee $avg_sales;
    datalines ;
Andy 12.3
Bob 14.5
Chad 8.44
Derrick -12.87
Eric -8.01

/*create new dataset*/
data new_data;
    set my_data;
    floor_avg_sales = floor (avg_sales);
    int_avg_sales = int (avg_sales);
run ;

/*view new dataset*/
proc print data = new_data; 

SAS FLOOR と INT 関数の比較

正の数値の場合、 FLOOR関数とINT関数は同じ結果を返します。

ただし、負の数値の場合は同じ結果が返されません。

FLOOR関数は基本的に負の数値を次の整数丸めるのに対し、 INT関数は負の数値を次の整数丸めます。

追加リソース

次のチュートリアルでは、SAS で他の一般的なタスクを実行する方法について説明します。

SAS で数値を丸める方法
SAS の文字列からカンマを削除する方法
SAS で値をパーセント形式で表示する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です