V tejto práci pracujem s databázou dopravných nehôd a skúmam, ktoré faktory súvisia s počtom zranených pri nehode. Ako vysvetľovanú premennú používam celkový počet zranených (injuries_total).
Modelujem injuries_total pomocou týchto faktorov:
Údaje sú uložené v súbore CSV, stĺpce sú oddelené
čiarkou (,) a používajú desatinnú bodku
(.).
Vychádzam z nasledujúcich predpokladov:
V tejto časti načítam dáta, vyberiem premenné potrebné pre analýzu a ošetrím chýbajúce hodnoty (NA). Keďže ide o číselné premenné, chýbajúce hodnoty doplním mediánom v rámci každej premennej, aby som minimalizovala vplyv extrémov.
| Počet.riadkov | Počet.stĺpcov | X..NA.pred | X..NA.po |
|---|---|---|---|
| 209306 | 5 | 0 | 0 |
Boxploty slúžia na rýchlu kontrolu rozdelenia premenných a identifikáciu extrémnych hodnôt. Vďaka nim vidíme, či sú dáta „rozumné“ a či niektoré premenné neobsahujú výrazné odľahlé pozorovania.
Na grafoch vidíme rozdelenie vybraných premenných a zároveň rýchlo identifikujeme odľahlé hodnoty.
injuries_total: Väčšina hodnôt je
veľmi nízka (najčastejšie 0–1 zranenie), čo je pri dopravných nehodách
očakávané. Zároveň sa objavuje veľa odľahlých
pozorovaní smerom nahor (vyšší počet zranených), ktoré
predstavujú zriedkavé, ale závažnejšie nehody. Rozdelenie je teda
výrazne pravostranné (veľa nízkych hodnôt, málo veľmi
vysokých).
num_units: Typická nehoda zahŕňa
malý počet vozidiel (najčastejšie 2), pričom vyššie
hodnoty sa objavujú skôr výnimočne a tvoria odľahlé pozorovania. Aj tu
ide o pravostranné rozdelenie, pretože veľké nehody s
viacerými vozidlami sú zriedkavé.
crash_hour: Hodiny sú rozložené v
rámci dňa, pričom medián je približne v strede (okolo popoludnia).
Nevidno tu extrémne nelogické hodnoty (napr. mimo rozsahu 0–23), takže
premenná pôsobí „rozumne“ a bez zjavnej chyby v dátach.
crash_day_of_week: Premenná pokrýva
celý rozsah dní v týždni (1–7). Boxplot naznačuje, že nehody nie sú
sústredené len na jeden konkrétny deň — rozdelenie je pomerne
vyvážené.
crash_month: Hodnoty sú v
očakávanom rozsahu 1–12, bez extrémnych mimo rozsahu. Medián je
približne uprostred roka, čo zodpovedá tomu, že nehody sa vyskytujú
počas celého roka (bez okamžite viditeľnej dominancie jedného
mesiaca).
V tejto časti odhadujem lineárny regresný model, aby som kvantifikovala vzťah medzi počtom zranených pri nehode (injuries_total) a vybranými faktormi: - počet vozidiel v nehode (num_units), - čas nehody (hodina, deň v týždni, mesiac).
Cieľom je zistiť: 1) či a ako silno súvisí počet vozidiel so
zraneniami,
2) či časové premenné zachytávajú rozdiely v závažnosti nehôd počas
dňa/týždňa/roka.
Výsledky interpretujem cez koeficienty (smer a veľkosť vplyvu) a p-hodnoty (štatistická významnosť).
| Premenná | Odhad | Std. chyba | t-hodnota | p-hodnota | 95% CI | Sig |
|---|---|---|---|---|---|---|
| Konštanta (Intercept) | -0.2478 | 0.0111 | -22.4030 | < 1e-16 | [-0.27; -0.226] | *** |
| Počet vozidiel (num_units) | 0.3234 | 0.0044 | 74.2270 | < 1e-16 | [0.315; 0.332] | *** |
| Hodina nehody (crash_hour) | -0.0024 | 0.0003 | -7.9164 | 2.46e-15 | [-0.003; -0.002] | *** |
| Deň v týždni (crash_day_of_week) | -0.0059 | 0.0009 | -6.7182 | 1.84e-11 | [-0.008; -0.004] | *** |
| Mesiac (crash_month) | 0.0030 | 0.0005 | 6.0130 | 1.82e-09 | [0.002; 0.004] | *** |
| R-squared | Adj. R-squared | F-statistic | F p-hodnota | Počet pozorovaní |
|---|---|---|---|---|
| 0.0263 | 0.0262 | 1410.997 | <1e-16 | 209306 |
Tabuľka koeficientov ukazuje smer a veľkosť vplyvu jednotlivých
premenných na počet zranených.
Najdôležitejšia premenná býva zvyčajne počet vozidiel
(num_units) – ak má koeficient kladné znamienko, znamená to, že
nehody s viacerými vozidlami majú v priemere viac zranených (pri
ostatných premenných konštantných).
Časové premenné (hodina, deň v týždni, mesiac) zachytávajú rozdiely v závažnosti nehôd v čase; ak sú niektoré z nich štatisticky významné (nižšia p-hodnota), naznačuje to, že počet zranených sa mierne mení podľa času nehody.
Graf predikované vs. skutočné ukazuje, ako dobre
model približne vystihuje dáta. Keďže počet zranených je často nízky
(0–1) a dáta sú „diskrétne“, rozptyl býva väčší a model berieme skôr ako
orientačný.
Na presnejšie modelovanie počtu zranených by sa v praxi zvážili aj
count-modely (Poisson/NegBin) a doplnenie ďalších premenných (napr. typ
zrážky, stav cesty).
Po odhadnutí lineárnej regresie nás zaujímajú najmä tri veci:
Súhrn odhadnutého modelu nám poskytuje súbor odhadnutých regresných koeficientov, ktorých znamienka budú rozoberané neskôr. Ak chceme posúdiť vlastnosti modelu ako celku, musíme skontrolovať, či spĺňa základné predpoklady lineárnej regresie. Na tento účel slúžia diagnostické grafy. Na základe Q–Q grafu môžeme posúdiť normalitu rezíduí, zatiaľ čo ostatné grafy poskytujú informácie o heteroskedasticite, linearite a prípadných vplyvných pozorovaniach.
Diagnostické grafy regresného modelu
Tento graf ukazuje, či sa model vhodne prispôsobil údajom a či sú splnené predpoklady linearity a konštantného rozptylu rezíduí. Rezíduá oscilujú okolo nuly bez jasného tvaru, čo naznačuje, že vzťah medzi vysvetľujúcimi premennými a počtom zranených je približne lineárny. Mierne zakrivenie hladkej červenej čiary môže naznačovať existenciu určitej nelinearity, no nejde o výrazny problém. Rozptyl rezíduí sa javí ako relatívne rovnomerný, takže sa neprejavuje heteroskedasticita (nerovnakosť rozptylu). Niekoľko bodov ďalej od ostatných môže predstavovať odľahlé pozorovania, ktoré je vhodné ďalej preskúmať.
Normal Q–Q graf porovnáva rozdelenie rezíduí s teoretickým normálnym rozdelením. V strede rozdelenia sú body relatívne blízko referenčnej priamky, no na koncoch sú viditeľné odchýlky, čo naznačuje ťažšie chvosty a prítomnosť extrémov. Tento záver podporuje aj Jarque–Bera test, ktorý normalitu rezíduí zamieta (p < 0,001).
Scale–Location graf (Spread–Location) hodnotí, či je variabilita rezíduí konštantná naprieč predikovanými hodnotami. V našom prípade je rozloženie bodov pomerne rovnomerné a červená LOESS krivka je relatívne plochá. To naznačuje, že predpoklad homoskedasticity je splnený – rozptyl rezíduí sa výrazne nemení s úrovňou predpovedí. Niekoľko bodov mierne odskočených od ostatných môže predstavovať menšie odľahlosti, ale nejde o nič kritické.
Graf Rezíduá vs. Pákový efekt pomáha identifikovať pozorovania, ktoré by mohli mať výrazný vplyv na výsledky regresie. Väčšina pozorovaní má nízky pákový efekt a nachádza sa v bezpečnej oblasti mimo kontúr Cookovej vzdialenosti. Jedno až dve pozorovania sa síce nachádzajú bližšie ku kontúram, ale nepresahujú kritické hranice. To znamená, že žiadne pozorovanie pravdepodobne neovplyvňuje model neprimerane. Je však vhodné tieto prípady pozorovať pri ďalšej analýze.
| Test | Statistic | df | p_value |
|---|---|---|---|
| Jarque–Bera | 4841155 | 2 | <1e-16 |
| Pozorovanie | rstudent | p | bonf.p | signif | cutoff | |
|---|---|---|---|---|---|---|
| 91226 | 91226 | 26.570 | <1e-16 | <1e-16 | TRUE | 0.05 |
| 50880 | 50880 | 26.145 | <1e-16 | <1e-16 | TRUE | 0.05 |
| 58314 | 58314 | 23.668 | <1e-16 | <1e-16 | TRUE | 0.05 |
| 192582 | 192582 | 18.656 | <1e-16 | <1e-16 | TRUE | 0.05 |
| 12776 | 12776 | 18.614 | <1e-16 | <1e-16 | TRUE | 0.05 |
| 177030 | 177030 | 18.606 | <1e-16 | <1e-16 | TRUE | 0.05 |
| 72700 | 72700 | 18.508 | <1e-16 | <1e-16 | TRUE | 0.05 |
| 10831 | 10831 | 18.236 | <1e-16 | <1e-16 | TRUE | 0.05 |
| 204217 | 204217 | 18.150 | <1e-16 | <1e-16 | TRUE | 0.05 |
| 194790 | 194790 | 15.636 | <1e-16 | <1e-16 | TRUE | 0.05 |
Jarque–Bera test vyhodnocuje, či sú rezíduá približne normálne rozdelené. V mojich výsledkoch vyšla veľmi vysoká hodnota testovej štatistiky a p-hodnota je prakticky nulová (p < 0,001), čo znamená, že normalitu rezíduí zamietam. Rezíduá teda nie sú normálne rozdelené, čo môže súvisieť s extrémnymi hodnotami a pravostranným rozdelením počtu zranených.
Druhá tabuľka zobrazuje najvýraznejšie odľahlé
pozorovania podľa Bonferroniho úpravy. Pri viacerých
pozorovaniach je Bonferroni p-hodnota veľmi nízka a
stĺpec signif má hodnotu TRUE, čo
naznačuje, že ide o štatisticky významné odľahlé prípady. Zároveň majú
vysoké hodnoty rstudent, teda ide o pozorovania s veľkou
odchýlkou od toho, čo predpovedá model. Tieto extrémy môžu ovplyvňovať
normalitu rezíduí a celkovú stabilitu odhadu.
Keďže Jarque–Bera test zamietol normalitu rezíduí a zároveň sa v dátach nachádzajú výrazné odľahlé pozorovania, pokúsim sa tieto vplyvy zmierniť transformáciou vysvetľovanej premennej injuries_total. Použijem logaritmickú transformáciu (log(injuries_total + 1)), ktorá zvyčajne pomáha znížiť vplyv extrémov a stabilizovať varianciu, čím sa zlepší správanie rezíduí a interpretácia modelu.
Keďže testy naznačili porušenie normality rezíduí v pôvodnom modeli a v dátach sa nachádzajú extrémne hodnoty, upravujem model transformáciou vysvetľovanej premennej. Počet zranených transformujem pomocou log(injuries_total + 1), čím znižujem vplyv extrémov a stabilizujem varianciu.
| Premenná | Odhad | Std. chyba | t-hodnota | p-hodnota | 95% CI | Sig |
|---|---|---|---|---|---|---|
| Konštanta (Intercept) | -0.0648 | 0.0056 | -11.608 | < 1e-16 | [-0.076; -0.054] | *** |
| Počet vozidiel (num_units) | 0.1485 | 0.0022 | 67.551 | < 1e-16 | [0.144; 0.153] | *** |
| Hodina nehody (crash_hour) | -0.0013 | 0.0002 | -8.198 | 2.46e-16 | [-0.002; -0.001] | *** |
| Deň v týždni (crash_day_of_week) | -0.0032 | 0.0004 | -7.243 | 4.41e-13 | [-0.004; -0.002] | *** |
| Mesiac (crash_month) | 0.0018 | 0.0003 | 6.955 | 3.53e-12 | [0.001; 0.002] | *** |
| R-squared | Adj. R-squared | F-statistic | F p-hodnota | Počet pozorovaní |
|---|---|---|---|---|
| 0.0221 | 0.0221 | 1180.86 | <1e-16 | 209306 |
Tabuľka koeficientov ukazuje smer a významnosť vplyvov v log-modeli. Kladný koeficient pri num_units znamená, že nehody s vyšším počtom vozidiel majú v priemere vyšší počet zranených (po transformácii). Graf predikované vs. skutočné slúži na rýchlu kontrolu, ako dobre model približne vystihuje údaje.
Nasledujúce diagnostické grafy kontrolujú, či sa po log-transformácii zlepšilo správanie rezíduí. V grafe Residuals vs Fitted sledujem, či rezíduá náhodne oscilujú okolo nuly bez výrazného vzoru. Q–Q graf ukazuje, či sa rezíduá približujú k normálnemu rozdeleniu (odchýlky na koncoch sú pri veľkých dátach bežné). Grafy Scale–Location a Residuals vs Leverage pomáhajú posúdiť stabilitu rozptylu a prítomnosť vplyvných pozorovaní.
Diagnostické grafy regresného modelu po log-transformácii
Cieľom analýzy bolo preskúmať faktory ovplyvňujúce počet zranených pri dopravných nehodách pomocou lineárnej regresie. Ako vysvetľujúce premenné sme použili počet zapojených vozidiel (num_units), hodinu nehody (crash_hour), deň v týždni (crash_day_of_week) a mesiac nehody (crash_month).
Výsledky regresného modelu naznačujú, že počet zapojených vozidiel má štatisticky významný vplyv na počet zranených, čo je v súlade s očakávaniami – nehody s vyšším počtom vozidiel majú spravidla závažnejšie následky. Ostatné časové premenné zachytávajú pravidelnosti v dopravnej nehodovosti, ktoré môžu súvisieť s intenzitou premávky počas dňa, týždňa alebo roka.
Diagnostické grafy a formálne testy poukázali na možné odchýlky od predpokladu normality rezíduí. Z tohto dôvodu sme pristúpili k logaritmickej transformácii vysvetľovanej premennej injuries_total, čím sme znížili vplyv extrémnych hodnôt a stabilizovali varianciu rezíduí. Nový regresný model vykazuje priaznivejšie diagnostické vlastnosti a je vhodnejší na interpretáciu vzťahov v dátach.
Celkovo možno konštatovať, že použitý regresný prístup poskytuje zmysluplný pohľad na faktory ovplyvňujúce počet zranených pri dopravných nehodách, pričom výsledky môžu slúžiť ako podklad pre ďalšiu analýzu dopravnej bezpečnosti.