Sas: как построить средние значения с помощью стандартных полос ошибок


Вы можете использовать следующий синтаксис в SAS для создания графика средних значений со стандартными планками ошибок по группам:

 /*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 ;

В этом конкретном примере PROC SQL используется для расчета среднего значения переменной «очки» , сгруппированной по переменной команды в наборе данных.

Затем мы используем PROC SGPLOT для создания графика, который показывает среднее значение переменной точек вместе со стандартными планками ошибок, сгруппированными по командной переменной.

В следующем примере показано, как использовать этот синтаксис на практике.

Пример. Построение графика средних значений со стандартными полосами ошибок в SAS

Предположим, у нас есть следующий набор данных, содержащий информацию об очках, набранных баскетболистами разных команд:

 /*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; 

Допустим, мы хотим создать диаграмму, показывающую среднее значение очков вместе со стандартными планками ошибок для каждой команды .

Для этого мы можем использовать следующий синтаксис:

 /*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 ; 

Маленькие кружки показывают среднее значение очков для каждой команды , а полоски, выходящие из кружков, показывают стандартную ошибку очков для каждой команды .

Мы также можем распечатать таблицу, созданную с помощью PROC SQL , чтобы увидеть фактические значения средней и стандартной ошибки:

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

Значения в этой таблице соответствуют значениям, показанным на графике выше.

Дополнительные ресурсы

В следующих руководствах объясняется, как создавать другие диаграммы в SAS:

Как создать линейные графики в SAS
Как создать коробчатые диаграммы по группам в SAS
Как создать диаграмму рассеяния с линией регрессии в SAS

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *