Как создавать сводные таблицы в sas (с примером)


Вы можете использовать PROC TABULATE в SAS для создания сводных таблиц для суммирования переменных в наборе данных.

В этой процедуре используется следующий базовый синтаксис:

 proc tabulate data =my_data;
    class var1;
    var var2 var3;
    table var1, var2 var3;
run ;

Оператор class указывает переменную для группировки, оператор var указывает числовые переменные для суммирования, а оператор table определяет формат сводной таблицы.

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

Пример. Использование Proc Tabulate для создания сводной таблицы в SAS

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

 /*create dataset*/
data my_data;
    input store $sales returns;
    datalines ;
At 10 2
At 7 0
At 7 1
At 8 1
At 6 0
B 10 2
B 14 5
B 13 4
B 9 0
B-52
C 12 1
C 10 1
C 10 3
C 12 4
C 9 1
;
run ;

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

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

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

 /*create pivot table to summarize sum of sales and returns by store*/
proc tabulate data =my_data;
    classstore ;
    var salesreturns;
    table store, sales returns;
run ; 

сводная таблица в SAS

Полученная сводная таблица показывает сумму продаж и возвратов в каждом магазине.

Например, мы можем увидеть:

  • Сумма продаж, произведенных в магазине А, равна 38 .
  • Сумма доходов, полученных магазином A, равна 4 .
  • Сумма продаж в магазине B равна 51 .
  • Сумма доходов, полученных магазином B, равна 13 .

И так далее.

По умолчанию SAS вычисляет сумму каждой числовой переменной в сводной таблице.

Однако вы можете ввести *Average после каждой числовой переменной, чтобы вычислить среднее значение:

 /*create pivot table to summarize mean of sales and returns by store*/
proc tabulate data =my_data;
    classstore ;
    var salesreturns;
    table store, sales*Mean returns*Mean;
run ; 

Полученная сводная таблица показывает средние продажи и возвраты в каждом магазине.

Например, мы можем увидеть:

  • Средняя стоимость продаж в магазине А равна 7,6 .
  • Среднее значение прибыли, полученной в магазине А, составляет 0,80 .
  • Средняя стоимость продаж, осуществленных в магазине B, равна 10,2 .
  • Среднее значение возвратов, сделанных в магазине B, составляет 2,6 .

И так далее.

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

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

Как использовать сводку процедур в SAS
Как рассчитать корреляцию в SAS
Как создать таблицы частот в SAS

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

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