Як створити діаграму qq у sas
Діаграма QQ, скорочення від «квантиль-квантиль», використовується для оцінки того, чи набір даних потенційно походить із теоретичного розподілу.
У більшості випадків цей тип графіка використовується, щоб визначити, чи відповідає набір даних нормальному розподілу.
Якщо дані розподілені нормально, точки на графіку QQ лежатимуть на прямій діагональній лінії.
І навпаки, чим більше точки на графіку відхиляються від прямої діагональної лінії, тим менша ймовірність того, що набір даних буде відповідати нормальному розподілу.
Найпростіший спосіб створити діаграму QQ у SAS — це використовувати оператор PROC UNIVARIATE з оператором QQPLOT :
proc univariate data =my_data noprint ; qqplot my_variable; run ;
Наступні приклади показують, як використовувати цей синтаксис на практиці.
Примітка . Ми використовуємо оператор NOPRINT для видалення всіх інших підсумкових статистичних даних і таблиць, автоматично згенерованих оператором PROC UNIVARIATE .
Приклад 1: Створіть діаграму QQ у SAS для звичайних даних
У наведеному нижче коді показано, як створити графік QQ для набору даних, що містить 1000 спостережень , згенерованих із нормального розподілу із середнім значенням 10 і стандартним відхиленням 2:
/*generate 1000 values that follow normal distribution with mean 10 and sd 2 */
data normal_data;
do i = 1 to 1000;
x = 10 + 2* rannor (1);
output ;
end ;
run ;
/*create some plot*/
proc univariate data =normal_data noprint ;
qqplot x;
run ;
Ми бачимо, що точки лежать в основному вздовж прямої діагональної лінії з деякими незначними відхиленнями вздовж кожного з хвостів.
На основі цього графіка можна сміливо припустити, що цей набір даних розподілений нормально.
Приклад 2: графік QQ для ненормальних даних
Наступний код показує, як створити діаграму QQ для набору даних, що містить 1000 спостережень, згенерованих за допомогою експоненціального розподілу :
/*generate 1000 values that follow an exponential distribution*/
data exp_data;
do i = 1 to 1000;
x = ranexp (1);
output ;
end ;
run ;
/*create some plot*/
proc univariate data =exp_data noprint ;
qqplot x;
run ;
Я бачу, що точки значно відхиляються від прямої діагональної лінії. Це чітко вказує на те, що набір даних не розподіляється нормально.
Це мало б мати сенс, враховуючи, що ми вказали, що дані мають відповідати експоненціальному розподілу.
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання в SAS:
Як використовувати Proc Univariate для перевірки нормальності в SAS
Як виконати перетворення журналу в SAS
Як визначити викиди в SAS