Multikolinearita
Východiskový model a údaje
Budeme sa sústrediť na analýzu multikolinearity medzi premennými
EBITDA marža, ROA, ROE, Z a M v rámci modelu regresie. Keď odhadneme
základný model, môžeme pozorovať rozdiely medzi odhadmi regresných
koeficientov, ktoré môžu signalizovať problémy s multikolinearitou.
Korelačná matica
Skontrolujeme koreláciu medzi týmito premennými, aby sme
identifikovali akúkoľvek silnú koreláciu, ktorá by mohla naznačovať
multikolinearitu. Ak je korelácia medzi dvoma alebo viacerými premennými
vyššia ako 0.8, resp. 0.9, môžeme zvážiť vynechanie jednej z týchto
premenných z modelu.
# Korelačná matica medzi premennými: EBITDA marža, ROA, ROE, Z a M
xvars <- udaje[, c("EBITDAmarza", "ROA", "ROE", "Z", "M")]
cor_matrix <- round(cor(xvars), 3)
# Výpis korelačnej matice
cor_matrix %>%
kbl(
caption = "Korelačná matica vysvetľujúcich premenných",
row.names = TRUE
) %>%
kable_classic(full_width = FALSE, html_font = "Arial") %>%
add_header_above(c(" " = 1, "Korelačná matica" = ncol(cor_matrix)))
Korelačná matica vysvetľujúcich premenných
|
Korelačná matica |
| |
EBITDAmarza |
ROA |
ROE |
Z |
M |
| EBITDAmarza |
1.000 |
0.366 |
0.055 |
0.091 |
0.141 |
| ROA |
0.366 |
1.000 |
0.436 |
0.079 |
-0.100 |
| ROE |
0.055 |
0.436 |
1.000 |
0.086 |
0.105 |
| Z |
0.091 |
0.079 |
0.086 |
1.000 |
0.580 |
| M |
0.141 |
-0.100 |
0.105 |
0.580 |
1.000 |
NA
VIF (Variance Inflation Factor)
VIF je metóda, ktorá pomáha detekovať multikolinearitu tým, že meria
infláciu variancie koeficientov. VIF vyšší ako 5 alebo 10 je varovný
signál. Po výpočte VIF môžeme určiť, ktoré premenné sú príčinou
multikolinearity a zvážiť ich vylúčenie z modelu.
# Predpokladám, že model je lineárny model s premennými ROE, ROA, EBITDA marža, Z a M
model <- lm(ROE ~ ROA + EBITDAmarza + Z + M, data = udaje)
# VIF pre premenné v modeli
vif_values <- vif(model)
# Konverzia na dátový rámec a výpis
vif_table <- data.frame(
Premenná = names(vif_values),
VIF = round(as.numeric(vif_values), 3)
)
# Výpis tabuľky
print(vif_table)
NA
Všetky VIF hodnoty sú výrazne pod prahom 5, čo naznačuje, že medzi
týmito premennými nie je prítomná silná multikolinearita. Zvyčajne sa za
indikátor problematickej multikolinearity považuje VIF > 5 (prísne
kritérium) alebo VIF > 10 (menej prísne kritérium). Keďže hodnoty VIF
sú pomerne nízke, môžeme dospieť k záveru, že v tomto modeli
multikolinearita nie je problém.
# Výpočet Condition Number
X <- model.matrix(model)[, -1] # odstránime intercept
XtX <- t(X) %*% X
eig <- eigen(XtX)
condition_number <- sqrt(max(eig$values) / min(eig$values))
condition_number
[1] 74.05863
Hodnota Condition Number je 74.06, čo znamená, že máme miernu
multikolinearitu, pretože hodnota spadá do rozsahu 30–100. Tento stav
naznačuje, že koeficienty môžu byť menej stabilné, ale nie sú nevyhnutne
problematické.
Riešenie problému multikolinearity
Vynechanie premennej
Jedným zo spôsobov, ako zlepšiť stabilitu modelu, je vynechať
niektoré premenné. Na to sa pozrieme, ako sa mení upravený koeficient
determinácie pri vynechaní jednotlivých premenných z modelu.
Najprv použijeme model, ktorý bude zahŕňať všetky premenné, a
následne odstránime premenné jednu po druhej, aby sme porovnali
výsledky
# Model s všetkými premennými
model_full <- lm(M ~ ROA + EBITDAmarza + Z + M, data = udaje)
# Model bez premennej ROA
model_noROA <- lm(M ~ EBITDAmarza + Z + M, data = udaje)
# Model bez premennej EBITDAmarza
model_noEBITDA <- lm(M ~ ROA + Z + M, data = udaje)
# Model bez premennej Z
model_noZ <- lm(M ~ ROA + EBITDAmarza + M, data = udaje)
# Výpis upravených koeficientov determinácie (R^2_adj) pre jednotlivé modely
model_comparison <- data.frame(
Model = c("Full model", "Without ROA", "Without EBITDAmarza", "Without Z"),
Adj_R2 = c(summary(model_full)$adj.r.squared,
summary(model_noROA)$adj.r.squared,
summary(model_noEBITDA)$adj.r.squared,
summary(model_noZ)$adj.r.squared)
)
model_comparison
NA
Pôvodný model (Full model):
Adjusted R² = 0.343 – Tento model, ktorý obsahuje všetky premenné
(ROA, EBITDA marža, Z, M), vysvetľuje približne 34.3% variability v
závislej premennej (v tomto prípade M).
Model bez ROA:
Adjusted R² = 0.318 – Po vynechaní ROA z modelu sa vysvetlenie
variability znížilo len minimálne, o približne 2.5%. ROA teda nie je
kľúčovou premennou v tomto modeli, čo môže naznačovať, že jej prítomnosť
neovplyvňuje výkon modelu výrazne.
Model bez EBITDA marže:
Adjusted R² = 0.332 – Po vynechaní EBITDA marže z modelu došlo k
miernemu poklesu o 1.1%, čo naznačuje, že EBITDA marža má stredný vplyv
na model, ale nie je úplne rozhodujúca pre vysvetlenie variability.
Model bez Z:
Adjusted R² = 0.008 – Po vynechaní Z došlo k dramatickému poklesu v
vysvetlení variability. Model už takmer nevysvetľuje žiadnu variabilitu
v závislej premennej. Tento výsledok jasne naznačuje, že Z je kľúčovou
premennou, bez ktorej model stráca svoju výpovednú hodnotu.
Zhrnutie:
Z je najdôležitejšou premennou v modely, pretože jej vynechanie
spôsobí dramatický pokles Adjusted R².
ROA a EBITDA marža majú menší vplyv na model, pričom vynechanie
týchto premenných vedie k miernemu poklesu vysvetlenej variability.
M je pravdepodobne silne závislá na Z, čo podporuje význam tejto
premennej pre celkový model.
Na základe tejto analýzy môžeme zvážiť, že Z je kľúčová pre
vysvetlenie výsledkov a model by mal zostať s touto premennou, zatiaľ čo
ROA a EBITDA marža môžu byť vylúčené, ak chceme zjednodušiť model bez
významnej straty na kvalite vysvetlenia.
LS0tCnRpdGxlOiAiUiBOb3RlYm9vayIKb3V0cHV0OiBodG1sX25vdGVib29rCi0tLQojIE11bHRpa29saW5lYXJpdGEKVsO9Y2hvZGlza292w70gbW9kZWwgYSDDumRhamUKCkJ1ZGVtZSBzYSBzw7pzdHJlZGnFpSBuYSBhbmFsw716dSBtdWx0aWtvbGluZWFyaXR5IG1lZHppIHByZW1lbm7DvW1pIEVCSVREQSBtYXLFvmEsIFJPQSwgUk9FLCBaIGEgTSB2IHLDoW1jaSBtb2RlbHUgcmVncmVzaWUuIEtlxI8gb2RoYWRuZW1lIHrDoWtsYWRuw70gbW9kZWwsIG3DtMW+ZW1lIHBvem9yb3ZhxaUgcm96ZGllbHkgbWVkemkgb2RoYWRtaSByZWdyZXNuw71jaCBrb2VmaWNpZW50b3YsIGt0b3LDqSBtw7TFvnUgc2lnbmFsaXpvdmHFpSBwcm9ibMOpbXkgcyBtdWx0aWtvbGluZWFyaXRvdS4KCiMgS29yZWxhxI1uw6EgbWF0aWNhCgpTa29udHJvbHVqZW1lIGtvcmVsw6FjaXUgbWVkemkgdMO9bWl0byBwcmVtZW5uw71taSwgYWJ5IHNtZSBpZGVudGlmaWtvdmFsaSBha8O6a2/EvnZlayBzaWxuw7oga29yZWzDoWNpdSwga3RvcsOhIGJ5IG1vaGxhIG5hem5hxI1vdmHFpSBtdWx0aWtvbGluZWFyaXR1LiBBayBqZSBrb3JlbMOhY2lhIG1lZHppIGR2b21hIGFsZWJvIHZpYWNlcsO9bWkgcHJlbWVubsO9bWkgdnnFocWhaWEgYWtvIDAuOCwgcmVzcC4gMC45LCBtw7TFvmVtZSB6dsOhxb5pxaUgdnluZWNoYW5pZSBqZWRuZWogeiB0w71jaHRvIHByZW1lbm7DvWNoIHogbW9kZWx1LgpgYGB7cn0KIyBLb3JlbGHEjW7DoSBtYXRpY2EgbWVkemkgcHJlbWVubsO9bWk6IEVCSVREQSBtYXLFvmEsIFJPQSwgUk9FLCBaIGEgTQoKeHZhcnMgPC0gdWRhamVbLCBjKCJFQklUREFtYXJ6YSIsICJST0EiLCAiUk9FIiwgIloiLCAiTSIpXQpjb3JfbWF0cml4IDwtIHJvdW5kKGNvcih4dmFycyksIDMpCgojIFbDvXBpcyBrb3JlbGHEjW5laiBtYXRpY2UKCmNvcl9tYXRyaXggJT4lCmtibCgKY2FwdGlvbiA9ICJLb3JlbGHEjW7DoSBtYXRpY2EgdnlzdmV0xL51asO6Y2ljaCBwcmVtZW5uw71jaCIsCnJvdy5uYW1lcyA9IFRSVUUKKSAlPiUKa2FibGVfY2xhc3NpYyhmdWxsX3dpZHRoID0gRkFMU0UsIGh0bWxfZm9udCA9ICJBcmlhbCIpICU+JQphZGRfaGVhZGVyX2Fib3ZlKGMoIiAiID0gMSwgIktvcmVsYcSNbsOhIG1hdGljYSIgPSBuY29sKGNvcl9tYXRyaXgpKSkKCmBgYAojIFZJRiAoVmFyaWFuY2UgSW5mbGF0aW9uIEZhY3RvcikKClZJRiBqZSBtZXTDs2RhLCBrdG9yw6EgcG9tw6FoYSBkZXRla292YcWlIG11bHRpa29saW5lYXJpdHUgdMO9bSwgxb5lIG1lcmlhIGluZmzDoWNpdSB2YXJpYW5jaWUga29lZmljaWVudG92LiBWSUYgdnnFocWhw60gYWtvIDUgYWxlYm8gMTAgamUgdmFyb3Zuw70gc2lnbsOhbC4gUG8gdsO9cG/EjXRlIFZJRiBtw7TFvmVtZSB1csSNacWlLCBrdG9yw6kgcHJlbWVubsOpIHPDuiBwcsOtxI1pbm91IG11bHRpa29saW5lYXJpdHkgYSB6dsOhxb5pxaUgaWNoIHZ5bMO6xI1lbmllIHogbW9kZWx1LgoKYGBge3J9CgojIFByZWRwb2tsYWTDoW0sIMW+ZSBtb2RlbCBqZSBsaW5lw6FybnkgbW9kZWwgcyBwcmVtZW5uw71taSBST0UsIFJPQSwgRUJJVERBIG1hcsW+YSwgWiBhIE0KbW9kZWwgPC0gbG0oUk9FIH4gUk9BICsgRUJJVERBbWFyemEgKyBaICsgTSwgZGF0YSA9IHVkYWplKQoKIyBWSUYgcHJlIHByZW1lbm7DqSB2IG1vZGVsaQp2aWZfdmFsdWVzIDwtIHZpZihtb2RlbCkKCiMgS29udmVyemlhIG5hIGTDoXRvdsO9IHLDoW1lYyBhIHbDvXBpcwp2aWZfdGFibGUgPC0gZGF0YS5mcmFtZSgKICBQcmVtZW5uw6EgPSBuYW1lcyh2aWZfdmFsdWVzKSwKICBWSUYgPSByb3VuZChhcy5udW1lcmljKHZpZl92YWx1ZXMpLCAzKQopCgojIFbDvXBpcyB0YWJ1xL5reQpwcmludCh2aWZfdGFibGUpCgpgYGAKVsWhZXRreSBWSUYgaG9kbm90eSBzw7ogdsO9cmF6bmUgcG9kIHByYWhvbSA1LCDEjW8gbmF6bmHEjXVqZSwgxb5lIG1lZHppIHTDvW1pdG8gcHJlbWVubsO9bWkgbmllIGplIHByw610b21uw6Egc2lsbsOhIG11bHRpa29saW5lYXJpdGEuIFp2ecSNYWpuZSBzYSB6YSBpbmRpa8OhdG9yIHByb2JsZW1hdGlja2VqIG11bHRpa29saW5lYXJpdHkgcG92YcW+dWplIFZJRiA+IDUgKHByw61zbmUga3JpdMOpcml1bSkgYWxlYm8gVklGID4gMTAgKG1lbmVqIHByw61zbmUga3JpdMOpcml1bSkuIEtlxI/FvmUgaG9kbm90eSBWSUYgc8O6IHBvbWVybmUgbsOtemtlLCBtw7TFvmVtZSBkb3NwaWXFpSBrIHrDoXZlcnUsIMW+ZSB2IHRvbXRvIG1vZGVsaSBtdWx0aWtvbGluZWFyaXRhIG5pZSBqZSBwcm9ibMOpbS4KCmBgYHtyfQojIFbDvXBvxI1ldCBDb25kaXRpb24gTnVtYmVyClggPC0gbW9kZWwubWF0cml4KG1vZGVsKVssIC0xXSAgIyBvZHN0csOhbmltZSBpbnRlcmNlcHQKWHRYIDwtIHQoWCkgJSolIFgKZWlnIDwtIGVpZ2VuKFh0WCkKCmNvbmRpdGlvbl9udW1iZXIgPC0gc3FydChtYXgoZWlnJHZhbHVlcykgLyBtaW4oZWlnJHZhbHVlcykpCgpjb25kaXRpb25fbnVtYmVyCgpgYGAKSG9kbm90YSBDb25kaXRpb24gTnVtYmVyIGplIDc0LjA2LCDEjW8gem5hbWVuw6EsIMW+ZSBtw6FtZSBtaWVybnUgbXVsdGlrb2xpbmVhcml0dSwgcHJldG/FvmUgaG9kbm90YSBzcGFkw6EgZG8gcm96c2FodSAzMOKAkzEwMC4gVGVudG8gc3RhdiBuYXpuYcSNdWplLCDFvmUga29lZmljaWVudHkgbcO0xb51IGJ5xaUgbWVuZWogc3RhYmlsbsOpLCBhbGUgbmllIHPDuiBuZXZ5aG51dG5lIHByb2JsZW1hdGlja8OpLgoKIyBSaWXFoWVuaWUgcHJvYmzDqW11IG11bHRpa29saW5lYXJpdHkKVnluZWNoYW5pZSBwcmVtZW5uZWoKCkplZG7DvW0gem8gc3DDtHNvYm92LCBha28gemxlcMWhacWlIHN0YWJpbGl0dSBtb2RlbHUsIGplIHZ5bmVjaGHFpSBuaWVrdG9yw6kgcHJlbWVubsOpLiBOYSB0byBzYSBwb3pyaWVtZSwgYWtvIHNhIG1lbsOtIHVwcmF2ZW7DvSBrb2VmaWNpZW50IGRldGVybWluw6FjaWUgcHJpIHZ5bmVjaGFuw60gamVkbm90bGl2w71jaCBwcmVtZW5uw71jaCB6IG1vZGVsdS4KCk5hanBydiBwb3XFvmlqZW1lIG1vZGVsLCBrdG9yw70gYnVkZSB6YWjFlcWIYcWlIHbFoWV0a3kgcHJlbWVubsOpLCBhIG7DoXNsZWRuZSBvZHN0csOhbmltZSBwcmVtZW5uw6kgamVkbnUgcG8gZHJ1aGVqLCBhYnkgc21lIHBvcm92bmFsaSB2w71zbGVka3kKYGBge3J9CiMgTW9kZWwgcyB2xaFldGvDvW1pIHByZW1lbm7DvW1pCgptb2RlbF9mdWxsIDwtIGxtKE0gfiBST0EgKyBFQklUREFtYXJ6YSArIFogKyBNLCBkYXRhID0gdWRhamUpCgojIE1vZGVsIGJleiBwcmVtZW5uZWogUk9BCgptb2RlbF9ub1JPQSA8LSBsbShNIH4gRUJJVERBbWFyemEgKyBaICsgTSwgZGF0YSA9IHVkYWplKQoKIyBNb2RlbCBiZXogcHJlbWVubmVqIEVCSVREQW1hcnphCgptb2RlbF9ub0VCSVREQSA8LSBsbShNIH4gUk9BICsgWiArIE0sIGRhdGEgPSB1ZGFqZSkKCiMgTW9kZWwgYmV6IHByZW1lbm5laiBaCgptb2RlbF9ub1ogPC0gbG0oTSB+IFJPQSArIEVCSVREQW1hcnphICsgTSwgZGF0YSA9IHVkYWplKQoKIyBWw71waXMgdXByYXZlbsO9Y2gga29lZmljaWVudG92IGRldGVybWluw6FjaWUgKFJeMl9hZGopIHByZSBqZWRub3RsaXbDqSBtb2RlbHkKCm1vZGVsX2NvbXBhcmlzb24gPC0gZGF0YS5mcmFtZSgKTW9kZWwgPSBjKCJGdWxsIG1vZGVsIiwgIldpdGhvdXQgUk9BIiwgIldpdGhvdXQgRUJJVERBbWFyemEiLCAiV2l0aG91dCBaIiksCkFkal9SMiA9IGMoc3VtbWFyeShtb2RlbF9mdWxsKSRhZGouci5zcXVhcmVkLApzdW1tYXJ5KG1vZGVsX25vUk9BKSRhZGouci5zcXVhcmVkLApzdW1tYXJ5KG1vZGVsX25vRUJJVERBKSRhZGouci5zcXVhcmVkLApzdW1tYXJ5KG1vZGVsX25vWikkYWRqLnIuc3F1YXJlZCkKKQoKbW9kZWxfY29tcGFyaXNvbgoKYGBgClDDtHZvZG7DvSBtb2RlbCAoRnVsbCBtb2RlbCk6CgpBZGp1c3RlZCBSwrIgPSAwLjM0MyDigJMgVGVudG8gbW9kZWwsIGt0b3LDvSBvYnNhaHVqZSB2xaFldGt5IHByZW1lbm7DqSAoUk9BLCBFQklUREEgbWFyxb5hLCBaLCBNKSwgdnlzdmV0xL51amUgcHJpYmxpxb5uZSAzNC4zJSB2YXJpYWJpbGl0eSB2IHrDoXZpc2xlaiBwcmVtZW5uZWogKHYgdG9tdG8gcHLDrXBhZGUgTSkuCgpNb2RlbCBiZXogUk9BOgoKQWRqdXN0ZWQgUsKyID0gMC4zMTgg4oCTIFBvIHZ5bmVjaGFuw60gUk9BIHogbW9kZWx1IHNhIHZ5c3ZldGxlbmllIHZhcmlhYmlsaXR5IHpuw63FvmlsbyBsZW4gbWluaW3DoWxuZSwgbyBwcmlibGnFvm5lIDIuNSUuIFJPQSB0ZWRhIG5pZSBqZSBrxL7DusSNb3ZvdSBwcmVtZW5ub3UgdiB0b210byBtb2RlbGksIMSNbyBtw7TFvmUgbmF6bmHEjW92YcWlLCDFvmUgamVqIHByw610b21ub3PFpSBuZW92cGx5dsWIdWplIHbDvWtvbiBtb2RlbHUgdsO9cmF6bmUuCgpNb2RlbCBiZXogRUJJVERBIG1hcsW+ZToKCkFkanVzdGVkIFLCsiA9IDAuMzMyIOKAkyBQbyB2eW5lY2hhbsOtIEVCSVREQSBtYXLFvmUgeiBtb2RlbHUgZG/FoWxvIGsgbWllcm5lbXUgcG9rbGVzdSBvIDEuMSUsIMSNbyBuYXpuYcSNdWplLCDFvmUgRUJJVERBIG1hcsW+YSBtw6Egc3RyZWRuw70gdnBseXYgbmEgbW9kZWwsIGFsZSBuaWUgamUgw7pwbG5lIHJvemhvZHVqw7pjYSBwcmUgdnlzdmV0bGVuaWUgdmFyaWFiaWxpdHkuCgpNb2RlbCBiZXogWjoKCkFkanVzdGVkIFLCsiA9IDAuMDA4IOKAkyBQbyB2eW5lY2hhbsOtIFogZG/FoWxvIGsgZHJhbWF0aWNrw6ltdSBwb2tsZXN1IHYgdnlzdmV0bGVuw60gdmFyaWFiaWxpdHkuIE1vZGVsIHXFviB0YWttZXIgbmV2eXN2ZXTEvnVqZSDFvmlhZG51IHZhcmlhYmlsaXR1IHYgesOhdmlzbGVqIHByZW1lbm5lai4gVGVudG8gdsO9c2xlZG9rIGphc25lIG5hem5hxI11amUsIMW+ZSBaIGplIGvEvsO6xI1vdm91IHByZW1lbm5vdSwgYmV6IGt0b3JlaiBtb2RlbCBzdHLDoWNhIHN2b2p1IHbDvXBvdmVkbsO6IGhvZG5vdHUuCgojIFpocm51dGllOgoKWiBqZSBuYWpkw7RsZcW+aXRlasWhb3UgcHJlbWVubm91IHYgbW9kZWx5LCBwcmV0b8W+ZSBqZWogdnluZWNoYW5pZSBzcMO0c29iw60gZHJhbWF0aWNrw70gcG9rbGVzIEFkanVzdGVkIFLCsi4KClJPQSBhIEVCSVREQSBtYXLFvmEgbWFqw7ogbWVuxaHDrSB2cGx5diBuYSBtb2RlbCwgcHJpxI1vbSB2eW5lY2hhbmllIHTDvWNodG8gcHJlbWVubsO9Y2ggdmVkaWUgayBtaWVybmVtdSBwb2tsZXN1IHZ5c3ZldGxlbmVqIHZhcmlhYmlsaXR5LgoKTSBqZSBwcmF2ZGVwb2RvYm5lIHNpbG5lIHrDoXZpc2zDoSBuYSBaLCDEjW8gcG9kcG9ydWplIHbDvXpuYW0gdGVqdG8gcHJlbWVubmVqIHByZSBjZWxrb3bDvSBtb2RlbC4KCk5hIHrDoWtsYWRlIHRlanRvIGFuYWzDvXp5IG3DtMW+ZW1lIHp2w6HFvmnFpSwgxb5lIFogamUga8S+w7rEjW92w6EgcHJlIHZ5c3ZldGxlbmllIHbDvXNsZWRrb3YgYSBtb2RlbCBieSBtYWwgem9zdGHFpSBzIHRvdXRvIHByZW1lbm5vdSwgemF0aWHEviDEjW8gUk9BIGEgRUJJVERBIG1hcsW+YSBtw7TFvnUgYnnFpSB2eWzDusSNZW7DqSwgYWsgY2hjZW1lIHpqZWRub2R1xaFpxaUgbW9kZWwgYmV6IHbDvXpuYW1uZWogc3RyYXR5IG5hIGt2YWxpdGUgdnlzdmV0bGVuaWEuCgo=