Sas で proc stdize を使用する方法 (例付き)
変数の標準化とは、平均値が 0、標準偏差が 1 になるように各変数の値をスケーリングすることを意味します。
次の式を使用して変数を標準化できます。
(x i – x ) / 秒
金:
- x i : データセットのi 番目の値
- x : サンプルの意味
- s : サンプルの標準偏差
SAS で変数を標準化する最も簡単な方法は、 PROC STDIZEステートメントを使用することです。
次の例は、このステートメントを実際に使用する方法を示しています。
例: SAS で PROC STDIZE を使用する方法
SAS に、さまざまなバスケットボール選手に関する情報を含む次のデータセットがあるとします。
/*create first dataset*/
data my_data;
input player $ points assists rebounds;
datalines ;
A 18 3 15
B 20 3 14
C 19 4 14
D 14 5 10
E 14 4 8
F 15 7 14
G 20 8 13
H 28 7 9
I 30 6 5
J 0 31 9 4
;
run ;
/*view dataset*/
proc print data =my_data;
PROC STDIZEステートメントを使用して、データセット内の各数値変数を標準化する新しいデータセットを作成できます。
/*standardize all numeric variables in dataset*/
proc stdize data =my_data out =std_data;
run ;
/*view new dataset*/
proc print data =std_data;
各数値変数 (ポイント、アシスト、リバウンド) は、平均が 0、標準偏差が 1 になるように標準化されました。
VARステートメントを使用して、正規化する変数を指定することもできることに注意してください。
たとえば、次のPROC STDIZEステートメントをVARステートメントとともに使用して、ポイント変数のみを正規化できます。
/*standardize points variable in dataset*/
proc stdize data =my_data out =std_data;
var points;
run ;
/*view new dataset*/
proc print data =std_data;
ポイント列の値は標準化され、他のすべての列はそのまま残りました。
PROC MEANSステートメントを使用すると、points 変数の平均値が 0 で標準偏差が 1 になったことを確認できます。
/*view mean and standard deviation of each variable*/ proc means data =std_data;
Points 変数の平均値は 0、標準偏差は 1 であることがわかります。
追加リソース
次のチュートリアルでは、SAS で他の一般的なタスクを実行する方法について説明します。
SAS で欠損値のある行を削除する方法
SAS での標準偏差の計算方法 (3 つの例)
SAS で Z スコアを計算する方法