Диаграмма рассеяния — это тип графика, который использует значения двух переменных, построенных на декартовой плоскости. Обычно используется для выяснения связи между двумя переменными. В 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;
Когда мы выполняем приведенный выше код, мы получаем следующий вывод:
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;
Когда мы выполняем приведенный выше код, мы получаем следующий вывод:
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;
Когда мы выполняем приведенный выше код, мы получаем следующий вывод: