Comment calculer une moyenne pondérée dans SAS (avec exemples)
Vous pouvez utiliser les méthodes suivantes pour calculer une moyenne pondérée dans SAS :
Méthode 1 : calculer la moyenne pondérée
proc sql;
create table new_data as
select sum(weight * value) / sum(weight) as weighted_average
from original_data;
quit;
Méthode 2 : calculer la moyenne pondérée par groupe
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;
Les exemples suivants montrent comment utiliser chaque méthode avec l’ensemble de données suivant dans SAS :
/*create dataset*/
data original_data;
input sales_rep $ price amount;
datalines;
A 8 1
A 5 3
A 6 2
B 7 2
B 12 5
B 14 4
;
run;
/*view dataset*/
proc print data=original_data;
Exemple 1 : calculer la moyenne pondérée
Le code suivant montre comment calculer une moyenne pondérée pour la variable prix , en utilisant la variable montant comme pondération :
/*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;
La moyenne pondérée des prix s’avère être de 9,70588 .
Exemple 2 : calculer la moyenne pondérée par groupe
Le code suivant montre comment calculer la moyenne pondérée de la variable price , regroupée par la variable 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;
À partir du résultat, nous pouvons voir :
- La moyenne pondérée du prix du commercial A est de 5,8333 .
- La moyenne pondérée du prix du commercial B est de 11,8182 .
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans SAS :
Comment calculer la moyenne par groupe dans SAS
Comment calculer la corrélation dans SAS
Comment créer des tableaux de fréquences dans SAS