Sas で加重平均を計算する方法 (例あり)


SAS では次の方法を使用して加重平均を計算できます。

方法 1: 加重平均を計算する

 proc sql ;
    create table new_data as
    select sum (weight * value) / sum (weight) as weighted_average
    from original_data;
quit ;

方法 2: グループごとの加重平均を計算する

 proc sql ;
    create table new_data as
    select grouping_variable,
sum (weight * value) / sum (weight) as weighted_average
    from original_data
    group by grouping_variable;
quit ;

次の例は、SAS の次のデータセットで各メソッドを使用する方法を示しています。

 /*create dataset*/
data original_data;
    input sales_rep $price amount;
    datalines ;
At 8 1
At 5 3
At 6 2
B 7 2
B 12 5
B 14 4
;
run ;

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

例 1: 加重平均を計算する

次のコードは、金額変数を重みとして使用して、価格変数の加重平均を計算する方法を示しています。

 /*calculate weighted average of price*/
proc sql ;
    create table new_data as
    select sum (amount * price) / sum (amount) as weighted_average
    from original_data;
quit ;

/*view weighted average of price*/
proc print data =new_data; 

価格の加重平均は9.70588となります。

例 2: グループごとの加重平均を計算する

次のコードは、 sales_rep変数によってグループ化された、 price変数の加重平均を計算する方法を示しています。

 /*calculate weighted average of price, grouped by sales_rep*/
proc sql ;
    create table new_data as
    select sales_rep,
sum (amount * price) / sum (amount) as weighted_average
    from original_data
    group by sales_rep;
quit ;

/*view results*/
proc print data =new_data;

結果から次のことがわかります。

  • 営業担当者 A の加重平均価格は5.8333です。
  • 営業担当者 B の加重平均価格は11.8182です。

追加リソース

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

SAS でグループごとの平均を計算する方法
SAS で相関関係を計算する方法
SAS で度数表を作成する方法

コメントを追加する

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