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

Регрессионный анализ — это статистический метод, который используется для изучения связи между одной или несколькими независимыми переменными и зависимой переменной. Это широко используемый метод во многих областях, включая экономику, здравоохранение и социальные науки. SAS (Система статистического анализа) — это мощный программный инструмент, который можно использовать для выполнения регрессионного анализа больших наборов данных.

Простой линейный регрессионный анализ в SAS

Простой линейный регрессионный анализ используется для изучения взаимосвязи между двумя переменными, где одна переменная считается независимой, а другая — зависимой. В SAS мы можем использовать различные процедуры для выполнения простого линейного регрессионного анализа. Давайте возьмем пример набора данных, который содержит рост и вес 20 человек:

DATA HW;
INPUT HEIGHT WEIGHT;
CARDS;
63 120
68 160
65 135
71 180
69 165
70 175
67 130
66 135
68 160
71 180
66 135
69 160
72 190
65 125
67 145
73 195
70 165
68 150
65 130
69 155
;
RUN;

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

РЕГ. ПРОК.

PROC REG DATA=HW;
MODEL WEIGHT = HEIGHT;
RUN;

Выход:

ГЛМ PROC

PROC GLM DATA=HW;
MODEL WEIGHT = HEIGHT;
RUN;

Выход:

СМЕШАННЫЙ ПРОК

PROC MIXED DATA=HW;
MODEL WEIGHT = HEIGHT / SOLUTION;
RUN;

Выход:

ПРОК ГЕНМОД

PROC GENMOD DATA=HW;
MODEL WEIGHT = HEIGHT / DIST=NORMAL;
RUN;

Выход:

PROC HPREG

PROC HPREG DATA=HW;
MODEL WEIGHT = HEIGHT;
RUN;

Выход:

Простой логистический регрессионный анализ в SAS

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

DATA PRODUCTS;
INPUT AGE PURCHASED;
DATALINES;
25 0
30 1
35 0
40 1
45 1
50 1
55 0
60 0
65 0
;
RUN;

ПРОК ЛОГИСТИК

PROC LOGISTIC DATA=PRODUCTS;
MODEL PURCHASED(EVENT='1') = AGE;
RUN;

Выход:

ПРОК ГЛИММИКС

PROC GLIMMIX DATA=PRODUCTS;
MODEL PURCHASED(EVENT='1') = AGE / DIST=BINOMIAL LINK=LOGIT SOLUTION;
RUN;

Выход:

ПРОК ГЕНМОД

PROC GENMOD DATA=PRODUCTS;
MODEL PURCHASED(EVENT='1') = AGE / DIST=BINOMIAL LINK=LOGIT TYPE3;
RUN;

Выход:

Простой многомерный регрессионный анализ в SAS

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

DATA PEOPLE;
INPUT HEIGHT WEIGHT AGE;
DATALINES;
65 150 25
70 175 30
68 160 35
72 190 40
67 155 45
69 170 50
66 155 55
68 165 60
65 145 65
;
RUN;

РЕГ. ПРОК.

PROC REG DATA=PEOPLE;
MODEL HEIGHT = WEIGHT AGE;
RUN;

Выход:

ГЛМ PROC

PROC GLM DATA=PEOPLE;
MODEL HEIGHT = WEIGHT AGE / SOLUTION;
RUN;

Выход:

СМЕШАННЫЙ ПРОК

PROC MIXED DATA=PEOPLE;
MODEL HEIGHT = WEIGHT AGE / SOLUTION;
RUN;

Выход:

— — —

Почему регрессионный анализ решил отказаться от программирования SAS?

Потому что ему нужно было время, чтобы обдумать свои мысли!

🙂🙂🙂