Sas でデータを正規化する方法
一連のデータ値を「正規化」するとは、すべての値の平均が 0、標準偏差が 1 になるように値をスケーリングすることを意味します。
このチュートリアルでは、SAS でデータを正規化する方法について説明します。
例: SAS でデータを正規化する方法
次のデータセットがあるとします。
SAS でこのデータ値のセットを正規化するには、次の手順を実行します。
ステップ 1: データセットを作成する
まず、次のコードを使用して SAS でデータセットを作成しましょう。
/*create dataset*/ data original_data; input values; datalines ; 12 14 15 15 16 17 18 20 24 25 26 29 32 34 37 ; run ; /*view mean and standard deviation of dataset*/ proc means data =original_data Mean StdDev ndec= 3 ; var values; run ;
結果から、データセットの平均は22.267 、標準偏差は7.968であることがわかります。
ステップ 2: データセットを正規化する
次に、 proc stdize を使用してデータセットを正規化します。
/*normalize the dataset*/
proc stdize data =original_data out =normalized_data;
var values;
run ;
/*print normalized dataset*/
proc print data =normalized_data;
/*view mean and standard deviation of normalized dataset*/
proc means data =normalized_data Mean StdDev ndec= 2 ;
var values;
run ;
結果から、正規化されたデータセットの平均は0で、標準偏差は1であることがわかります。
ステップ 3: 正規化されたデータを解釈する
SAS は次の式を使用してデータ値を正規化しました。
正規化された値 = (x – x ) / s
金:
- x = データ値
- x = データセットの平均
- s = データセットの標準偏差
正規化された各値は、元のデータ値と平均の間の標準偏差の数を示します。
たとえば、元のデータセットのデータ ポイント「12」を考えてみましょう。元のサンプル平均は 22.267、元のサンプル標準偏差は 7.968 でした。
次のように計算すると、「12」の正規化値は -1.288 であることがわかりました。
正規化された値 = (x – x ) / s = (12 – 22.267) / 7.968 = -1.288
これは、値「12」が元のデータセットの平均よりも 1.288 標準偏差低いことを示しています。
データセット内の正規化された各値は、特定のデータ値が平均からどの程度近いか遠いかを理解するのに役立ちます。
小さい正規化値は値が平均に近いことを示し、大きい正規化値は値が平均から遠いことを示します。
追加リソース
次のチュートリアルでは、SAS で他の一般的なタスクを実行する方法について説明します。