Tänases praktikumis

Seni oleme

  • kirjeldanud arvulisi tunnuseid,
  • kirjeldanud mittearvulisi tunnuseid,
  • võrrelnud tunnuse jaotumist kahes grupis.

Põhiliselt oleme tegelenud ühe tunnuse uurimise ja kirjeldamisega.
Nüüd liigume edasi kahe tunnuse vaheliste seoste juurde ning vaatleme korrelatsiooni. Korrelatsioon ehk sõltuvus tähendab, et ühe tunnuse muutus mingis kindlas suunas toob kaasa teise tunnuse muutuse kindlas suunas.

Tänased teemad:

1. Arvuliste tunnuste vaheline korrelatsioon

  • sõltuvuse tüübid ja sõltuvuse suund
  • korrelatsioonikordajad
    • Pearsoni korrelatsioonikordaja
    • Spearmani korrelatsioonikordaja
    • Kendalli korrelatsioonikordaja
  • korrelatsioonide visualiseerimine

2. Mittearvuliste tunnuste vaheline korrelatsioon

  • hii-ruut-test
  • Fisheri täpne test
  • seose tugevuse hindamine

Arvuliste tunnuste vaheline korrelatsioon

Sõltuvuse suund

  • Kahe tunnuse väärtuste vahel on positiivne (samapidine) sõltuvus, kui mõlema tunnuse väärtused kasvavad ja kahanevad koos.
  • Kahe tunnuse väärtuste vahel on negatiivne (vastupidine) sõltuvus, kui tunnuste väärtused muutuvad eri suundades.
  • Kahe tunnuse väärtuste vahel ei ole sõltuvust, kui ühe tunnuse väärtuste muutumine ei too kaasa teise tunnuse väärtuste muutumist.

Korrelatsioonikordajad

Korrelatsioonikordaja näitab seose

  • olemasolu,
  • tugevust,
  • suunda.

Pideva normaaljaotusega tunnuste jaoks sobib Pearsoni korrelatsioonikordaja r.

Järjestustunnuste või mitte normaaljaotusega pidevatele tunnustele sobivad Spearmani korrelatsioonikordaja ρ ehk astakkkorrelatsioonikordaja ning Kendalli korrelatsioonikordaja τ.

On ka muid valikuid, millest siin kursusel juttu ei tule, nt Goodmani-Kruskali gamma, Somersi D, neljavälja korrelatsioonikordaja ja veel palju muud.

Korrelatsioonikordaja väärtused on tavaliselt vahemikus [-1;1]. Väärtus 1 tähendab, et tegemist on täpse positiivse korrelatsiooniga, -1 tähendab, et tegemist on täpse negatiivse korrelatsiooniga, 0 tähendab, et korrelatsiooni pole.

Pearsoni korrelatsioonikordaja

Pearsoni korrelatsioonikordaja sobib, kui

  • tegemist on pidevate tunnustega,
  • tunnused on normaaljaotusega,
  • tegemist on monotoonse ja lineaarse seosega.

Omadused:

  • r(X,X) = 1 ehk ühe tunnuse korrelatsioon iseendaga on 1,
  • r(X,Y) = r(Y,X) ehk X ja Y korrelatsioon on sama, mis Y ja X korrelatsioon,
  • kui r > 0, siis on tegemist samapidise seosega,
  • kui r < 0, siis on tegemist vastupidise seosega,
  • kui r = 0, siis puudub lineaarne sõltuvus (aga võib esineda mittelineaarne sõltuvus),
  • \(r^{2}\) ehk determinatsioonikordaja näitab, kui suure osa ühest tunnusest teine tunnus ära kirjeldab. Näiteks kui r = 1, kirjeldab ühe tunnuse muutumine ära 1^2*100 ehk 100% teise tunnuse muutumisest; kui r = -0.5, kirjeldab ühe tunnuse muutumine ära (-0.5)^2*100 ehk 25% teise tunnuse muutumisest.

Seose tugevus:

  • kui |r| >= 0.7, on tunnuste vahel väga tugev seos,
  • kui 0.5 <= |r| < 0.7, on tunnuste vahel tugev seos,
  • kui 0.3 <= |r| < 0.5 , siis on tegemist keskmise seosega (üks tunnus kirjeldab teisest ligikaudu 25%).

Selle, millisest väärtusest alates tegelikult seost tugevaks pidada, määravad tihtipeale ära valdkond, uurimisküsimus, andmed vm tegurid, seega tuleb seose tugevust tõlgendada alati kontekstuaalselt.

Pearsoni korrelatsioonikordaja on väga tundlik erindite suhtes!

## [1] 6.01236e-16
## [1] 0.8700447

Loeme sisse andmestiku ldt.csv paketist Rling, mis on lisamaterjal Natalia Levshina õpikule “How to do linguistics with R” (2015). Andmestik sisaldab 100 juhuslikult valitud sõna the English Lexicon Projecti andmebaasist (Balota jt 2007). ELP sisaldab katselisi ja kirjeldavaid andmeid (nt sõna pikkus, sagedus, ortograafiliste naabrite arv, konkreetsus/abstraktsus, sõnaliik, sõna keskmine äratundmisaeg, sõna keskmine nimetamisaeg jpm) enam kui 40 000 inglise keele sõna kohta, samuti andmeid väljamõeldud sõnade kohta.

Selles andmestikus on ainult 5 tunnust: X (sõna ise), Length (sõna pikkus tähemärkides), Freq (sõna sagedus HAL korpuses), Mean_RT (keskmine reaktsiooniaeg millisekundites sõna-mittesõna äratundmisel).

Tahaksime teada, kas sõna-mittesõna otsuse tegemiseks kuluv aeg sõltub sõna pikkusest. Meie hüpotees on, et pikemate sõnade äratundmiseks kuluv aeg on pikem.

Lisame ka regressioonijoone, mis lihtsustatult öeldes näitab üldist suundumust andmetes. Regressioonist tuleb pikemalt juttu järgmises praktikumis.

Tundub, et tegemist on positiivse monotoonse korrelatsiooniga: mida pikem on sõna, seda rohkem aega kulub otsustamiseks, kas tegemist on sõna või mitte-sõnaga.

Leiame Pearsoni korrelatsioonikordaja. Mida selle väärtus näitab?

Näeme jooniselt, et andmestikus tundub olevat paar sõna, mille reaktsiooniaeg on eriti pikk (üle 1200 ms). Kontrollime, kas need võivad olla erindid ja seega meie korrelatsioonikordajat mõjutada.

Vaatame, mis korrelatsioonikordajaga juhtub, kui viskame erindid andmestikust välja.

Näeme, et regressioonijoone kalle muutub laugemaks ning tegelikult väheneb ka korrelatsiooni tugevus.

Selleks, et olla kindlam selles, et korrelatsioonikordaja näitab olulist seost ka mõnes teises üldkogumist juhuslikult võetud valimis, tuleb testida korrelatsioonikordaja statistilist olulisust. Selle testimisel on mitmeid eeldusi:

  1. Valim on üldkogumist juhuslikult valitud.
  2. Mõlemad tunnused on vähemalt intervallskaalal.
  3. Mõlemad tunnused on normaaljaotusega ja nende ühisjaotus on samuti normaaljaotus (bivariate normal distribution) ja/või valim on piisavalt suur (30 või rohkem vaatlust). See tähendab, et mis tahes X-i väärtuse puhul on Y normaaljaotusega ja vastupidi.
  4. Jääkide dispersioon peab olema homoskedastiline ehk ei tohi sõltuda sõltumatu muutuja (x-teljel oleva muutuja) väärtusest.
  5. Jäägid on üksteise suhtes sõltumatud, st ei tohi esineda autokorrelatsiooni jääkide vahel - tunnuse väärtus ei tohi sõltuda eelmisest või järgmisest väärtusest.

Valimi juhuslikkus (1) on antud juhul täidetud ning mõlemad tunnused on tõepoolest vähemalt intervallskaalal (2). Teiste eelduste jaoks peame kasutama juba tegelikult lineaarse regressiooni mudelit funktsiooniga lm(y~x).

3. Normaaljaotuse kontrollimine.

Nagu ka Shapiro-Wilk’i testi puhul on siin nullhüpoteesiks, et andmete ühisjaotus läheneb normaaljaotusele. Seega näitab suur p-väärtus siin, et peame jääma selle nullhüpoteesi juurde ning tõdeme, et normaaljaotuse eeldusega on kõik hästi.

4. Jääkide dispersiooni kontrollimine. Jäägid on iga vaatluse kaugus regressioonijoonest (samades ühikutes, mis y-teljel olev tunnus).

Kui jääkide dispersioon on homoskedastiline, siis on iga x-teljel oleva tunnuse väärtuse puhul jääkide hajuvus ühesugune. Kui jääkide dispersioon on heteroskedastiline, siis märkame enamasti lehtrikujulist jaotust: y-teljel oleva tunnuse väärtused ei kasva/kahane x-telje igas vahemikus ühtmoodi ning mingite x-telje väärtuste puhul on y-telje väärtused üksteisest palju erinevamad kui mingite teiste x-telje väärtuste puhul.

Vaatleme nüüd pikkuse ja reaktsiooniaja jääke.

Jääkide homoskedastilisuse kontrollimiseks on kindlam kasutada testi ncvTest paketist car.

Kuna p > 0.05, siis saame öelda, et ka jääkide homosekdastilisusega on kõik korras.

5. Jääkide sõltumatus

Kuna p > 0.05, siis jääme nullhüpoteesi juurde, mille järgi jääkide vahel ei ole autokorrelatsiooni. Seega ei sõltu tunnuse väärtus tunnuse eelmisest väärtusest (= ühe mingi pikkusega sõna reaktsiooniaeg ei sõltu sellele eelnevast mingi pikkusega sõna reaktsiooniajast). Jääkide autokorrelatsiooni võib ette tulla tunnuste puhul, kus muutus on järk-järguline (nt temperatuur), aegridade analüüsis, aga ka juhul, kui nt ühelt subjektilt on mitu vaatlust. Autokorrelatsiooni testimisel tuleb hoolikas olla ka nt andmete sorteerimisega!

Kui oleme kindlad, et andmestik vastab kõikidele eeldustele, siis saame testida kordaja olulisust. Nagu ka t-testi puhul, võib valida, kas teeme ühepoolse või kahepoolse testi. Kui eeldame, et korrelatsioon on positiivne ehk sisukas hüpotees on, et korrelatsioonikordaja > 0, siis teeme ühepoolse hüpoteesi ja lisame alternative = “greater”. Kui eeldame, et korrelatsioon on negatiivne (korrelatsioonikordaja < 0), siis lisame alternative = “less”. NB! Funktsiooni cor.test() argumendid on kujul x, y, mitte y ~ x.

Saame sama korrelatsioonikordaja, mis funktsiooni cor() puhul. Korrelatsioon on seega positiivne ja väga tugev. p-väärtus 1.145e-10 ehk 0.0000000001145 näitab, et korrelatsioon on statistiliselt oluline ehk kehtib tõenäoliselt ka üldkogumis.

Spearmani ρ ja Kendalli τ korrelatsioonikordajad

Sobivad, kui

  • pidev tunnus ei ole normaaljaotusega,
  • tegemist on järjestustunnusega,
  • tegemist on monotoonse sõltuvusega (ei pea olema lineaarne).

Omadused:

  • pole erindite suhtes nii tundlikud,
  • Kendall annab tavaliselt natuke madalama väärtuse kui Spearman, kuid see ei mõjuta testi võimsust, st mõlema kordaja puhul on sama tõenäosus, et esineb oluline sõltuvus.

Spearmani ja Kendalli korrelatsioonikordaja olulisuse testimisel on kaks eeldust:

  1. Valim on üldkogumist juhuslikult valitud.
  2. Mõlemad tunnused on järjestustunnused (kui ei ole, siis R muudab need automaatselt järjestustunnusteks).

Ilmselgelt peab tegemist olema ka monotoonse seosega, vastasel juhul ei ole korrelatsioonikordajal mingit sisu.

Vaatleme näiteks, kas eesti ja üldkeeleteaduse instituudis aastatel 1994-2019 kaitstud doktoritööd on läinud aastatega mahukamaks?

Kontrollime, kas tunnused on normaaljaotusega.

Kuna tunnused ei ole kumbki normaaljaotusega, oleks parem kasutada Spearmani või Kendalli korrelatsioonikordajat.

Nende andmete põhjal ei saa me väita, et korrelatsioon oleks ei tugev ega ka statistiliselt oluline.

Aga kas pealkirjad on läinud pikemaks?

Arvutame ka Kendalli tau.

Kumba valida? Selle üle vaieldakse ja tavaliselt valitakse see, mis vastavas uurimisvaldkonnas tavaks on. Samas ütlevad mõned, et kui andmestik on väike ja mitmed tunnused on samade väärtustega, siis peaks eelistama Kendalli korrelatsioonikordajat.

Vaatame veel lõpuks, kas meil oli tegu ikka puhtalt monotoonse seosega.

Korrelatsioonikordaja valimine

Eeldused Pearson Spearman või Kendall
Juhuslikud valimid Jah Jah
Sõltumatud vaatlused Jah Jah
Jääkide vahel ei ole
autokorrelatsiooni
Jah Jah
Vähemalt …skaalal tunnus intervall- järjestus-
Normaaljaotus (või n>30) Jah Ei
Jääkide ühtlane hajuvus Jah Ei
Lineaarne suhe Jah Ei

Mittearvuliste tunnuste vaheline korrelatsioon

Mittearvuliste tunnuste vahelise sõltuvuse hindamiseks võib kasutada nt hii-ruut-testi või Fisheri testi, mis töötavad kahemõõtmeliste sagedustabelite ehk risttabelite peal (see ei tähenda aga, et sisendiks peaks tingimata olema risttabel).

Hii-ruut-test

Hii-ruut-test (chi-squared test) on statistiline test, millega saab hinnata kahe kategoriaalse tunnuse sõltuvust. Test töötab risttabeliga, milles on lihtsagedused (mitte suhtelised ega normaliseeritud sagedused).

Vaatleme näitena andmeid Ann Siimani artiklist “Ainsuse sisseütleva vormi valiku seos morfosüntaktiliste ja semantiliste tunnustega - materjali ning meetodi sobivus korpusanalüüsiks” (2015), kus ta kasutas hii-ruut-testi, et selgitada välja, millest sõltub see, kas kasutatakse lühikest sisseütleva käände vormi ehk aditiivi (majja) või pikka sisseütleva käände vormi ehk illatiivi (majasse).

Uurime siin esmalt, kas käände vormi valik sõltub sellest, kas tegemist on pärisnime või üldnimega (nt Amblasse vs. ajajärku).

Risttabelit saab mõistagi teha ka andmestiku tunnustest, nt table(andmed$tunnus1, andmed$tunnus2).

Visualiseerime tabelit.

Vaadeldud/tegelikud (observed) sagedused on tegelikud sagedused igas tabeli lahtris.
Oodatud/teoreetilised (expected) sagedused leitakse valemiga reasumma*veerusumma/kogusumma. Teoreetilised sagedused eeldavad, et andmed on ühtlaselt jaotunud ja kehtib nullhüpotees, et tunnuse väärtused on juhuslikud ja kaks tunnust ei ole üksteisest sõltuvad. Mida suurem on tegelike sageduste erinevus oodatud sagedustest, seda suurem on ka hii-ruut-statistiku väärtus.

Hii-ruut-testi eeldused:

  • Valim on üldkogumist juhuslikult valitud.
  • Vaatlused on sõltumatud.
  • Iga vaatlus peab sobima risttabelis täpselt ainult ühte lahtrisse (st iga uuritava tunnuse ainult ühte kategooriasse).

Teeme nüüd päriselt hii-ruut-testi. Vaikimisi tehakse test Yates’i pidevuse parandusega, mis püüab parandada sellest tekkivat viga, et diskreetset jaotust püütakse lähendada pideva jaotusega. Selle kasutamise kohta on palju vastuolulisi arvamusi, aga teeme esialgu testi ilma pidevusparanduseta (correct = FALSE).

Hii-ruut-statistik leitakse valemiga \(x^2 = \sum \frac{(o-e)^2}{e}\) ehk

Testi p-väärtus näitab tõenäosust, et saaksime sama ekstreemse statistiku väärtuse juhul, kui tunnuste vahel ei oleks mingit seost. Kuna p-väärtus on siin väga väike, võime hüljata nullhüpoteesi ja võtta vastu sisuka hüpoteesi, mille kohaselt kaks tunnust on omavahel sõltuvuses.

Vaatame ka, millised erinevused tegelike ja oodatud sageduste vahel on olulised. Selleks vaatleme taas jääke, mida siin arvutatakse valemiga \(\frac{(o-e)}{\sqrt{e}}\).

Kui jääk on positiivne, on tegelik sagedus suurem kui oodatud. Kui jääk on negatiivne, on tegelik sagedus väiksem kui oodatud.

Teeme jääkide graafiku.

Jääkide graafikul on helesinisega märgitud positiivne jääk vahemikus 2 kuni 4 (meie graafikul illatiivis pärisnimed) ja tumesinisega sellest suurem positiivne jääk (4+, meie graafikul puudub). Helepunasega on märgitud negatiivne jääk vahemikus -2 kuni -4 (meie graafikul aditiivis pärisnimed) ja tumepunasega sellest suurem negatiivne jääk (väiksem kui -4, meie graafikul puudub).

Graafikul on samuti kujutatud kõikide lahtrite, ridade ja veergude osakaalud tabelis. Näiteks on pärisnimesid mõlema käändevormiga oluliselt vähem kui üldnimesid.

Selleks, et näha, millised jäägid esindavad olulist erinevust oodatud sagedustest, vaatame standardiseeritud jääke. Standardiseeritud jäägid on erinevus tegeliku ja oodatud sageduse vahel, mis on jagatud

Kui olulisuse nivoo on 0.05, siis on statistiliselt olulised need jäägid, mis on suuremad kui 1.96 või väiksemad kui -1.96 (tihti ümardatakse ka 2 ja -2).

Fisheri täpne test

Mida teha siis, kui andmestikus on teoreetilised (!) sagedused, mis on < 5 või lausa 0? Tihti räägitakse, et sellistel juhtudel hii-ruut-test ei sobi.

Alternatiiv on Fisheri täpne test:

  • tulemus ei põhine ligikaudsetel väärtustel (mis võivad madala sagedusega andmestike puhul ebatäpsed olla), vaid test kasutab tabeli marginaalsagedusi, arvutades tõenäosuse kõikide tabelite kohta, mis võiksid selliste marginaalsageduste korral esineda;
  • nullhüpotees on endiselt, et kahe tunnuse vahel ei ole sõltuvust ja sisukas hüpotees, et kaks tunnust on omavahel sõltuvuses.

Vaatleme nüüd käändevormi sõltuvust sellest, millise sõnaliigiga on tegemist.

Vali Fisheri test, kui

  • vaatluste arv < 20 VÕI
  • vaatluste arv on 20-40 ja vähemalt üks teoreetiline sagedus on < 5 VÕI
  • vaatluse arv on > 40, aga vähemalt üks oodatav sagedus on < 1.

Muudel juhtudel sobib kasutamiseks siiski ka hii-ruut-test.

Seose tugevuse hindamine

Ruuttabeli (2x2, 3x3, 4x4 jne) puhul on Craméri V ja φ-kordaja samad ja vahemikus [0,1].

  • Nõrk seos: 0.1-0.3
  • Keskmine seos: 0.3-0.5
  • Tugev seos: > 0.5

NB! Seose tugevuse hindamine ei käi samadel alustel nagu korrelatsioonikordajate puhul. Samuti ei näita Craméri V ega φ-kordaja seose suunda.

Suuremate (mitteruut)tabelite puhul võivad hakata kordajate väärtused erinema. Craméri V jääb alati vahemikku [0,1], φ-kordaja kordaja väärtus võib minna ka üle 1.

Tavaliselt kasutatakse 2x2 tabelist suuremate tabelite puhul Craméri V-d, sest see on võrreldav ka eri suurustega tabelite korral.

Tegemist on pigem nõrga seosega.

Kordamiseks

  • Kahe tunnuse puhul saab uurida nende korrelatsiooni ehk sõltuvust.
  • Arvuliste tunnuste puhul sobivad Pearsoni, Spearmani või Kendalli korrelatsioonikordajad. Kordajat saab leida funktsiooniga cor().
    • Kui korrelatsioonikordaja on 1, on tegemist täiusliku positiivse sõltuvusega; kui korrelatsioonikordaja on -1, on tegemist täiusliku negatiivse sõltuvusega; kui korrelatsioonikordaja on 0, ei pruugi kahe tunnuse vahel seost olla või on tegemist mingit teist tüüpi seosega kui see, mida meie korrelatsioonikordaja testib.
    • Pearsoni korrelatsioonikordaja sobib, kui
      • tegemist on pidevate tunnustega,
      • kahe tunnuse vahel on lineaarne monotoonne seos,
      • andmestikus ei ole erindeid.
    • Pearsoni korrelatsioonikordaja on statistiliselt oluline (funktsioon cor.test()), kui
      • valim on üldkogumist juhuslikult valitud,
      • mõlemad tunnused on vähemalt intervallskaalal,
      • mõlemad tunnused ja nende ühisjaotus on normaaljaotusega (shapiro.test(), energy::mvnorm.etest()),
      • jäägid on ühtlase hajuvusega (car::ncvTest()),
      • jäägid on üksteisest sõltumatud (car::durbinWatsonTest()).
    • Spearmani ja Kendalli korrelatsioonikordajad sobivad, kui
      • pidev tunnus ei ole normaaljaotusega,
      • tegemist on järjestustunnustega,
      • tegemist on monotoonse sõltuvusega (ei pea olema lineaarne).
    • Spearmani ja Kendalli korrelatsioonikordajad on statistiliselt olulised (cor.test()), kui
      • valim on üldkogumist juhuslikult valitud,
      • mõlemad tunnused on vähemalt järjestusskaalal.
  • Mittearvuliste tunnuste puhul sobib kasutada näiteks hii-ruut-testi või Fisheri täpset testi.
    • Põhinevad risttabelitel.
    • Testid eeldavad, et
      • valim on üldkogumist juhuslikult valitud,
      • vaatlused on sõltumatud,
      • iga vaatlus sobib ainult ühte tabeli lahtrisse.
    • Olulisemaid erinevusi tegelike ja oodatud sageduste vahel saab visualiseerida nt funktsioonidega vcd::mosaic() ja vcd::assoc(), samuti näeb seda standardiseeritud jääkidest.
    • Seose tugevust on võimalik hinnata nt Craméri V-ga (vcd::assocstats()).