Учебники

SAS — точечные диаграммы

Диаграмма рассеяния — это тип графика, который использует значения двух переменных, построенных на декартовой плоскости. Обычно используется для выяснения связи между двумя переменными. В SAS мы используем PROC SGSCATTER для создания графиков рассеяния.

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

Синтаксис

Основной синтаксис для создания точечной диаграммы в SAS —

PROC sgscatter  DATA = DATASET;
   PLOT VARIABLE_1 * VARIABLE_2
   / datalabel = VARIABLE group = VARIABLE;
RUN;

Ниже приведено описание используемых параметров:

  • DATASET — это имя набора данных.

  • VARIABLE — это переменная, используемая из набора данных.

DATASET — это имя набора данных.

VARIABLE — это переменная, используемая из набора данных.

Простое Scatterplot

В простой диаграмме рассеяния мы выбираем две переменные из набора данных и группируем их по третьей переменной. Мы также можем пометить данные. Результат показывает, как две переменные разбросаны в декартовой плоскости.

пример

PROC SQL;
create table CARS1 as
SELECT make, model, type, invoice, horsepower, length, weight
FROM 
SASHELP.CARS
WHERE make in ('Audi','BMW')
;
RUN;

TITLE 'Scatterplot - Two Variables';
PROC sgscatter  DATA = CARS1;
   PLOT horsepower*Invoice 
   / datalabel = make group = type grid;
   title 'Horsepower vs. Invoice for car makers by types';
RUN; 

Когда мы выполняем приведенный выше код, мы получаем следующий вывод:

sactter_plot1

Scatterplot с предсказанием

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

пример

proc sgscatter data = cars1; 
compare y = Invoice  x = (horsepower length)  
         / group = type  ellipse =(alpha = 0.05 type = predicted); 
title
'Average Invoice vs. horsepower for cars by length'; 
title2
'-- with 95% prediction ellipse --'
; 
format
Invoice dollar6.0;
run;

Когда мы выполняем приведенный выше код, мы получаем следующий вывод:

sactter_plot_eliipse

Scatter Matrix

Мы также можем получить диаграмму рассеяния, включающую более двух переменных, сгруппировав их в пары. В приведенном ниже примере мы рассмотрим три переменные и нарисуем матрицу графика рассеяния. Получаем 3 пары полученной матрицы.

пример

PROC sgscatter  DATA = CARS1;
   matrix horsepower invoice length
   / group = type;

   title 'Horsepower vs. Invoice vs. Length for car makers by types';
RUN; 

Когда мы выполняем приведенный выше код, мы получаем следующий вывод: