Как рассчитать средневзвешенное значение в 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 :
/*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;

По результату мы видим:
- Средневзвешенная цена продавца А равна 5,8333 .
- Средневзвешенная цена продавца B равна 11,8182 .
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в SAS:
Как рассчитать среднее значение на группу в SAS
Как рассчитать корреляцию в SAS
Как создать таблицы частот в SAS