Регресія з декількома залежними змінними?


61

Чи можливо мати (множинне) рівняння регресії з двома або більше залежними змінними? Звичайно, ви можете запустити два окремі рівняння регресії, по одному для кожного DV, але це не здається, що воно би захопило будь-які відносини між двома DV?


Відповіді:


35

Так, можливо. Те, що вас цікавить, називається "Багатоваріантна множинна регресія" або просто "Багатоваріантна регресія". Я не знаю, яке програмне забезпечення ви використовуєте, але ви можете це зробити в Р.

Ось посилання, яке надає приклади.

http://www.public.iastate.edu/~maitra/stat501/lectures/MultivariateRegression.pdf


2
Можна додати, що підгонка регресій окремо, дійсно еквівалентна багатоваріантному складу з матрицею залежних змінних. У R з встановленим пакетом mvtnorm (1-а: багатоваріантна модель, 2-а: окремі одновимірні моделі): бібліотека (mvtnorm); X <- rmvnorm (100, c (1, 2), матриця (c (4, 2, 2, 3), ncol = 2)); Y <- X% *% матриця (1: 4, ncol = 2) + rmvnorm (100, c (0, 0), diag (c (20, 30))); lm (Y ~ X [, 1] + X [, 2]); lm (Y [, 1] ~ X [, 1] + X [, 2]); lm (Y [, 2] ~ X [, 1] + X [, 2])
каракал

3
Якщо це рівнозначно, яка мета?
Джошуа Розенберг

1
@JoshuaRosenberg Однією з причин проведення багатоваріантної регресії над окремими регресіями з одиночними залежними змінними є можливість проводити тести коефіцієнтів для різних змінних результатів. Наприклад, ви можете виконати F-тест, щоб побачити, чи має прогноз такий же вплив на одну змінну результату, як і на іншу змінну результату.
AlexK

10

@ Відповідь Бретта чудова.

Якщо вам цікаво описати вашу двоблокову структуру, ви також можете використати регресію PLS . По суті, це рамка регресії, яка спирається на ідею побудови послідовних (ортогональних) лінійних комбінацій змінних, що належать кожному блоку, таким чином, щоб їх коваріація була максимальною. Тут ми вважаємо, що один блок містить пояснювальні змінні, а інший блок змінних змін, як показано нижче:YXY

alt текст

Ми шукаємо "прихованих змінних", які враховують максимум інформації (лінійним способом), що входить до блоку , дозволяючи передбачити блок з мінімальною помилкою. і є навантаження (наприклад, лінійні комбінації) , пов'язані з кожним виміром. Критерії оптимізації зчитуютьсяY u j v jXYujvj

maxuh∣=1,vh∣=1cov(Xh1uh,Yvh)(maxcov(ξh,ωh))

де означає спущений (тобто залишковий) блок після регресії .Xh1Xhth

Кореляція між факторними балами по першій розмірності ( і ) відображає величину - посилання.ξ1ω1XY


Я думаю, що multiplex-multipley PLS по суті робить кілька "multipleX-singleY" PLS. Отже, відношення між змінними Y не розглядаються.
lanselibai

4

Багатоваріантна регресія проводиться в SPSS з використанням мультиваріантної опції GLM.

Введіть усі результати (DV) у поле результатів, а всі ваші постійні прогнози - у поле коваріатів. Вам нічого не потрібно в полі факторів. Подивіться на багатоваріантні тести. Уніваріантні тести будуть такими ж, як окремі множинні регресії.

Як ще хтось сказав, ви також можете вказати це як модель структурного рівняння, але тести однакові.

(Що цікаво, я думаю, що це цікаво, в цьому є трохи різниця між Великобританією та США. У Великобританії багаторазова регресія зазвичай не вважається багатоваріантною технікою, отже, багатоваріантна регресія є багатоваріантною лише тоді, коли у вас є кілька результатів / DV. )


2
додавання в @Jeremy Miles відповідь: www-01.ibm.com/support/docview.wss?uid=swg21476743
Епамінонд

2

Я б це зробив, спершу перетворивши регресійні змінні в обчислені змінні PCA, а потім перейшов би до регресії з обчисленими змінними PCA. Звичайно, я б зберігав власні вектори, щоб мати можливість обчислити відповідні значення pca, коли у мене є новий екземпляр, який я хочу класифікувати.


2
Це здається концептуально іншим, ніж відповідь вище. Мені все ще не зрозуміло, як перетворення змінних на коефіцієнти PCA дозволяє мені регресувати на 2+ залежних змінних?
Джефф

@Jeff ця відповідь насправді концептуально схожа на багатоваріантну регресію. Тут пропонується зробити два дискретні кроки послідовно (тобто знайти зважені лінійні складові змінні та регресувати їх); багатоваріантна регресія виконує два етапи одночасно . Багатоваріантна регресія буде більш потужною, оскільки WLCV формуються таким чином, щоб максимально регресувати. Однак двоступенева процедура може забезпечити більшу чіткість щодо процесу або бути інакше кращою для дослідника.
gung - Відновіть Моніку

1
@gung Hmm, такий тип має для мене сенс, якщо ти робиш PCA на залежних змінних, а потім регресуєш лише на першому головному компоненті ... Але тоді ти все одно викидаєш багато дисперсій.
Jeff

1
@ Джефе, ПК є ортогональними. Ви можете проводити незалежні регресії на кожній. Однак це менш потужне b / c, декомпозиція не зовсім однакова, і багатовимірний регресійний тест насправді не являє собою серію рег на ПК.
gung - Відновіть Моніку

@gung так, ви можете запустити N незалежних регресій, але тоді ви отримаєте N наборів бета-коефіцієнтів. я не розумію, як це вирішує проблему?
Джефф

1

Як згадував каракал, ви можете використовувати пакет mvtnorm в Р. Припустимо, що ви створили lm модель (названу "модель") одного з відповідей у ​​вашій моделі, і назвали її "моделлю", ось як отримати багатоваріантний прогнозний розподіл декількох відповідей "resp1", "resp2", "resp3", що зберігаються у матричній формі Y:

library(mvtnorm)
model = lm(resp1~1+x+x1+x2,datas) #this is only a fake model to get
                                  #the X matrix out of it
Y = as.matrix(datas[,c("resp1","resp2","resp3")])
X =  model.matrix(delete.response(terms(model)), 
           data, model$contrasts)
XprimeX  = t(X) %*% X
XprimeXinv = solve(xprimex)
hatB =  xprimexinv %*% t(X) %*% Y
A = t(Y - X%*%hatB)%*% (Y-X%*%hatB)
F = ncol(X)
M = ncol(Y)
N = nrow(Y)
nu= N-(M+F)+1 #nu must be positive
C_1 =  c(1  + x0 %*% xprimexinv %*% t(x0)) #for a prediction of the factor setting x0 (a vector of size F=ncol(X))
varY = A/(nu) 
postmean = x0 %*% hatB
nsim = 2000
ysim = rmvt(n=nsim,delta=postmux0,C_1*varY,df=nu) 

Тепер квантили ysim - це інтервали допуску бета-очікування від прогнозного розподілу, ви можете, звичайно, безпосередньо використовувати вибірковий розподіл, щоб робити все, що завгодно.

Щоб відповісти Ендрю Ф., ступінь свободи, отже, nu = N- (M + F) +1 ... N - кількість спостережень, M - кількість відповідей і F - параметри на модель рівняння. ну повинен бути позитивним.

(Ви можете прочитати мою роботу в цьому документі :-))


0

Ви вже стикалися з терміном "канонічна кореляція"? Там у вас є набори змінних як на незалежній, так і на залежній стороні. Але, можливо, є більш сучасні концепції, описи, які я маю, - це всі вісімдесяті / дев'яні роки ...


1
Канонічна кореляція - це кореляція між коефіцієнтами коефіцієнтів, обчисленими з двоблокових структур, як це стосується CCA або PLS. Це саме те, що я описав у своїй відповіді (регресія PLS), хоча PLS є більш доцільним, ніж CCA, коли змінні грають асиметричну роль, що, ймовірно, має місце в цьому випадку. Це тому, що існує асиметричний процес дефляції, і ми працюємо замість коваріації (з CCA ми дефліруємо обидва блоки одночасно, і прагнемо до максимальної кореляції замість коваріації).
chl

@chl: upps- сьогодні (кінець січня) Я повернувся до цього питання / розмови в середині листопада .... Вибачте, що раніше не перевіряв - було щось із моїми курсами, а потім я забув stat.exchange. .. Якщо я щось вартую, я повернусь наступних днів.
Готфрід Гельмс

-3

Це називається модель структурного рівняння або модель одночасного рівняння.


3
Я можу помилятися, але не думаю, що це одне й те саме. З графіків SEM, які я бачив, схоже, що SEM використовує множинні рівняння регресії для визначення значень прихованих факторів, а потім інша регресія проводиться за значенням цих прихованих факторів для визначення коефіцієнта вищого порядку. Можливо, це неправильно, але я ніколи не бачив графа SEM, який пов'язує кілька IV з декількома DV - все є ієрархічним.
Джефф

Малюнок 8 у цій статті: biomedcentral.com/1471-2288/3/27 Ви можете це зробити, але сенсу мало. Це те саме, що MANOVA.
Джеремі Майлз
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.