Versie-info: De code voor deze pagina is getest in Stata 12.
Zoals de naam al aangeeft, is multivariate regressie een techniek waarbij een enkel regressiemodel met meer dan één uitkomstvariabele wordt geschat. Wanneer er meer dan een voorspellende variabele in een multivariaat regressiemodel, het model is een multivariate multiple regressie.
Let op: Het doel van deze pagina is om te laten zien hoe je verschillende data-analyse commando’s te gebruiken.Het dekt niet alle aspecten van het onderzoeksproces dat onderzoekers worden verwacht te doen. In het bijzonder wordt niet ingegaan op het opschonen en controleren van gegevens, het verifiëren van aannames, modeldiagnostiek en mogelijke vervolganalyses.
Voorbeelden van multivariate regressie
Voorbeeld 1. Een onderzoeker heeft voor 600 middelbare scholieren gegevens verzameld over drie psychologische variabelen, vier academische variabelen (gestandaardiseerde testscores), en het type onderwijsprogramma waar de scholier in zit. Zij is geïnteresseerd in hoe de psychologische variabelen samenhangen met de academische variabelen en het type opleiding van de leerling.
Voorbeeld 2. Een arts heeft gegevens verzameld over cholesterol, bloeddruk en gewicht. Zij heeft ook gegevens verzameld over de eetgewoonten van de proefpersonen (bv. hoeveel ons rood vlees, vis, zuivelproducten en chocolade er per week werd geconsumeerd). Zij wil de relatie tussen de drie gezondheidsmetingen en de eetgewoonten onderzoeken.
Voorbeeld 3. Een onderzoeker wil graag weten welke factoren van invloed zijn op de gezondheid van Afrikaanse violetplanten. Zij verzamelt gegevens over de gemiddelde bladdiameter, de massa van de wortelkluit en de gemiddelde diameter van de bloesems, alsmede over hoe lang de plant al in de huidige container staat. Voor de voorspellende variabelen meet ze verschillende elementen in de bodem, en de hoeveelheid licht en water die elke plant krijgt.
Beschrijving van de gegevens
Laten we voorbeeld 1 van hierboven nastreven. We hebben een hypothetische dataset met 600 waarnemingen over zeven variabelen. e psychologische variabelen zijn locus of control (locus_of_control), self-concept (self_concept), enmotivatie (motivation). De academische variabelen zijn gestandaardiseerde testscores voor lezen (read), schrijven (write) en natuurwetenschappen (science), en een categorische variabele (prog) die aangeeft in welk type programma de leerling zit (algemeen, academisch of beroepsgericht).
Laten we de gegevens eens bekijken (merk op dat er geen ontbrekende waarden zijn in deze dataset).
Analysemethoden die je zou kunnen overwegen
Hieronder volgt een lijst van enkele analysemethoden die je misschien al bent tegengekomen. Sommige van de genoemde methoden zijn heel redelijk, terwijl andere ofwel uit de gratie zijn geraakt ofwel beperkingen hebben.
- Multivariate meervoudige regressie, de focus van deze pagina.
- Separate OLS Regressions – U zou deze gegevens kunnen analyseren met behulp van aparte OLS regressieanalyses voor elke uitkomstvariabele. De afzonderlijke coëfficiënten en hun standaardfouten zullen dezelfde zijn als die welke door de multivariate regressie worden geproduceerd. De OLS-regressies zullen echter geen multivariate resultaten opleveren, noch zullen ze het testen van coëfficiënten over vergelijkingen heen mogelijk maken.
- Canonieke correlatieanalyse zou haalbaar kunnen zijn als je de ene set variabelen niet als uitkomstvariabelen en de andere set als voorspellende variabelen wilt beschouwen.
Multivariate regressie
Om een multivariate regressie in Stata uit te voeren, moeten we twee commando’s gebruiken, manova en mvreg. Het manova commando geeft aan of alle vergelijkingen, samen genomen, statistisch significant zijn. De F-ratio’s en p-waarden voor vier multivariate criteria worden gegeven, waaronder Wilks’ lambda, Lawley-Hotelling trace, Pillai’s trace, en Roy’s grootste wortel. Vervolgens gebruiken we het mvreg commando om de coëfficiënten, standaardfouten, enz. te verkrijgen voor elk van de voorspellers in elk deel van het model. We zullen ook het gebruik van het test-commando na het mvreg-commando laten zien. Het gebruik van het test-commando is een van de dwingende redenen om een multivariate regressie-analyse uit te voeren.
Hieronder voeren we het manova-commando uit. Let op het gebruik van c. voor de namen van de continue voorspellende variabelen – dit is onderdeel van de factor variabelentaxis die in Stata 11 is geïntroduceerd. Het is noodzakelijk de c. te gebruiken om de continue variabelen te identificeren, omdat het manova-commando er standaard van uitgaat dat alle voorspellende variabelen categorisch zijn.
- De tests voor het algemene model, weergegeven in het gedeelte met het label Model (underSource), geven aan dat het model statistisch significant is, ongeacht het type multivariate criteria dat wordt gebruikt (d.w.z. dat alle p-waarden kleiner zijn dan 0,0001). Als het algemene model niet statistisch significant was, zou u het kunnen wijzigen voordat u mvreg uitvoert.
- Onder de algemene model tests, staan de multivariate tests voor elk van de voorspellende variabelen. Elk van de voorspellers is statistisch significant, ongeacht welke test wordt gebruikt.
We kunnen mvreg gebruiken om schattingen van de coëfficiënten in ons model te verkrijgen. Normaal gesproken vereist mvreg dat de gebruiker zowel uitkomst- als voorspellervariabelen specificeert, maar omdat we zojuist het manova-commando hebben uitgevoerd, kunnen we het mvreg-commando zonder extra invoer gebruiken om een multivariate regressie uit te voeren die overeenkomt met het model dat zojuist door maova is geschat (merk op dat deze functie is geïntroduceerd in Stata 11, als u een eerdere versie van Stata gebruikt, moet u de volledige syntaxis voor mvreg gebruiken).
- De uitvoer van het mvreg commando lijkt veel op de uitvoer van het regress commando, behalve dat de uitvoer drie vergelijkingen betreft (één voor elke uitkomstmaat) in plaats van één. De uitvoer ziet er niet alleen uit als de uitvoer van een OLS-regressie, maar wordt ook op dezelfde manier geïnterpreteerd als de uitvoer van een OLS-regressie.
- De eerste tabel geeft het aantal waarnemingen, het aantal parameters, RMSE, R-squared, F-ratio en p-waarde voor elk van de drie modellen.
- In de kolom met P zien we dat elk van de drie univariate modellen statistisch significant is.
- In de kolom met R-sq zien we dat de vijf voorspellende variabelen respectievelijk 19%, 5% en 15% van de variantie in de uitkomstvariabelen locus_of_control, self_concept, en motivation verklaren. (Merk op dat deze waarde een standaard R-kwadraat is, geen gecorrigeerde R-kwadraat.)
- De tweede tabel bevat de coëfficiënten, hun standaardfouten, teststatistiek (t), p-waarden, en 95%-betrouwbaarheidsinterval, voor elke voorspellervariabele in het model, gegroepeerd naar uitkomst. Zoals hierboven vermeld, worden de coëfficiënten op dezelfde manier geïnterpreteerd als coëfficiënten uit een OLS regressie. Bijvoorbeeld, kijkend naar de bovenkant van de tabel, een verandering van één eenheid in aflezing gaat gepaard met een verandering van 0,013 eenheid in de voorspelde waarde van locus_of_control.
Als je voor elke uitkomstvariabele een aparte OLS regressie zou uitvoeren, zou je precies dezelfde coëfficiënten, standaardfouten, t- en p-waarden, en betrouwbaarheidsintervallen krijgen als hierboven getoond. Dus waarom een multivariate regressie uitvoeren? Zoals we eerder vermeldden, is een van de voordelen van het gebruik van mvreg dat u tests van de coëfficiënten over de verschillende uitkomstvariabelen kunt uitvoeren. (Merk op dat veel van deze tests kunnen worden uitgevoerd na het manova commando, hoewel het proces moeilijker kan zijn omdat een reeks contrasten moet worden aangemaakt). In de onderstaande voorbeelden testen we vier verschillende hypothesen.
Voor de eerste test is de nulhypothese dat de coëfficiënten voor de variabele lezen gelijk zijn aan 0 in alle drie de vergelijkingen. (Merk op dat dit een duplicaat is van de test voor de variabele read in de manova-uitvoer hierboven.)
test read ( 1) read = 0 ( 2) read = 0 ( 3) read = 0 F( 3, 594) = 4.78 Prob > F = 0.0027
De resultaten van deze test verwerpen de nulhypothese dat de coëfficiënten voor lees in de drie vergelijkingen gelijktijdig gelijk zijn aan 0, met andere woorden, de coëfficiënten voor lees zijn, voor alle drie uitkomsten samen, statistisch significant.
Ten tweede kunnen we de nulhypothese testen dat de coëfficiënten voor prog=2 (geïdentificeerd als 2.prog) en prog=3 (geïdentificeerd als 3.prog) gelijktijdig gelijk zijn aan 0 in de vergelijking voor locus_of_control. Wanneer dit type test wordt gebruikt om de coëfficiënten te testen voor dummy-variabelen die een enkele categorische voorspeller vormen, wordt dit soms een algemene test voor het effect van de categorische voorspeller (d.w.z. prog) genoemd. Merk op dat de naam van de variabele tussen haakjes (d.w.z. locus_of_control) aangeeft tot welke vergelijking de geteste coëfficiënt behoort, waarbij de vergelijking wordt geïdentificeerd door de naam van de uitkomstvariabele.
test 2.prog 3.prog ( 1) 2.prog = 0 ( 2) 3.prog = 0 F( 2, 594) = 6.83 Prob > F = 0.0012
De resultaten van bovenstaande test geven aan dat de twee coëfficiënten samen significant verschillend zijn van 0, met andere woorden, het totale effect van prog op locus_of_control is statistisch significant.
Het volgende voorbeeld test de nulhypothese dat de coëfficiënt voor de variabele schrijven in de vergelijking met locus_of_control als uitkomst gelijk is aan de coëfficiënt voor schrijven in de vergelijking met zelf_concept als uitkomst. De nulhypothese die door het testcommando wordt afgedrukt, is dat het verschil in de coëfficiënten 0 is, wat een andere manier is om te zeggen dat twee coëfficiënten gelijk zijn. Een andere manier om deze nulhypothese te formuleren is dat het effect van schrijven op locus_of_control gelijk is aan het effect van schrijven op zelf_concept.
test write = write ( 1) write - write = 0 F( 1, 594) = 11.89 Prob > F = 0.0006
De resultaten van deze test geven aan dat het verschil tussen de coëfficiënten voor schrijven met locus_of_control en zelf_concept als uitkomst significant verschillend is van 0, met andere woorden, de coëfficiënten zijn significant verschillend.
Voor het laatste voorbeeld testen we de nulhypothese dat de coëfficiënt van wetenschap in de vergelijking voor locus_of_control gelijk is aan de coëfficiënt voor wetenschap in de vergelijking voor zelf_concept, en dat de coëfficiënt voor de variabele schrijven in de vergelijking met de uitkomstvariabele locus_of_control gelijk is aan de coëfficiënt voor schrijven in de vergelijking met de uitkomstvariabele zelf_concept. We hebben het verschil in de coëfficiënten voor schrijven getest in het laatste voorbeeld, dus we kunnen de accum-optie gebruiken om de test van het verschil in coëfficiënten voor wetenschap toe te voegen, zodat we beide reeksen coëfficiënten tegelijk kunnen testen.
test science = science, accum ( 1) write - write = 0 ( 2) science - science = 0 F( 2, 594) = 6.39 Prob > F = 0.0018
De resultaten van de bovenstaande test geven aan dat de verschillen in de twee reeksen coëfficiënten samen statistisch significant zijn.
Dingen om te overwegen
- De residuen van multivariate regressiemodellen worden verondersteld multivariate normaal te zijn. Dit is analoog aan de veronderstelling van normaal verdeelde fouten in univariate lineaire regressie (d.w.z. ols regressie).e. ols regressie).
- Multivariate regressieanalyse wordt niet aanbevolen voor kleine steekproeven.
- De uitkomstvariabelen moeten ten minste matig gecorreleerd zijn om de multivariate regressieanalyse zinvol te laten zijn.
- Als de uitkomstvariabelen dichotomisch zijn, dan moet u mvprobit of biprobit gebruiken.
Zie ook
Stata Online Manual
- manova
- mvreg