Sas: como traçar médias com barras de erro padrão


Você pode usar a seguinte sintaxe no SAS para criar um gráfico de valores médios com barras de erro padrão por grupo:

 /*calculate mean and standard error of points for each team*/
proc sql ;
create table groupPlot as
select 
    team, 
    mean(points) as meanPoints, 
    mean(points) - stderr (points) as lowStdPoints,    
    mean(points) + stderr (points) as highStdPoints
from my_data
group by team;
quit ;

/*create plot with mean and standard error bars of points for each team*/
proc sgplot data =groupPlot;
scatter x =team y =meanPoints / 
    yerrorlower =lowStdPoints yerrorupper =highStdPoints group =team;
series x =team y =meanPoints / group =team;
run ;

Este exemplo específico usa PROC SQL para calcular o valor médio da variável de pontos , agrupada pela variável de equipe em um conjunto de dados.

Em seguida, usamos PROC SGPLOT para criar um gráfico que mostra o valor médio da variável pontos junto com as barras de erro padrão, agrupadas por variável de equipe .

O exemplo a seguir mostra como usar essa sintaxe na prática.

Exemplo: plotando médias com barras de erro padrão no SAS

Suponha que temos o seguinte conjunto de dados contendo informações sobre pontos marcados por jogadores de basquete de diferentes times:

 /*create dataset*/
data my_data;
    input team $points;
    datalines ;
At 29
At 23
At 20
At 21
At 33
B14
B 13
B17
B14
B15
C 21
C22
C 20
C25
C24
;
run ;

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

Digamos que queremos criar um gráfico mostrando o valor médio de pontos junto com barras de erro padrão para cada equipe .

Podemos usar a seguinte sintaxe para fazer isso:

 /*calculate mean and standard error of points for each team*/
proc sql ;
create table groupPlot as
select 
    team, 
    mean(points) as meanPoints, 
    mean(points) - stderr (points) as lowStdPoints,    
    mean(points) + stderr (points) as highStdPoints
from my_data
group by team;
quit ;

/*create plot with mean and standard error bars of points for each team*/
proc sgplot data =groupPlot;
scatter x =team y =meanPoints / 
    yerrorlower =lowStdPoints yerrorupper =highStdPoints group =team;
series x =team y =meanPoints / group =team;
run ; 

Os pequenos círculos mostram o valor médio dos pontos de cada equipe e as barras que se estendem dos círculos mostram o erro padrão dos pontos de cada equipe .

Também podemos imprimir a tabela que criamos usando PROC SQL para ver os valores reais da média e do erro padrão:

 /*print mean and standard error of points for each team*/
proc print data =groupPlot;

Os valores desta tabela correspondem aos apresentados no gráfico acima.

Recursos adicionais

Os tutoriais a seguir explicam como criar outros gráficos no SAS:

Como criar gráficos de linhas no SAS
Como criar boxplots por grupo no SAS
Como criar um gráfico de dispersão com linha de regressão no SAS

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *