Sagedustabel
Pidevale suurusele sagedustabelit tehes jagatakse esmalt tunnuse väärtused vahemikesse. Näiteks inimeste pikkused
(cm) võime jagada vahemikesse (140..150], (150..160], ... jne. Täpsemalt, tekitame cut-käsu abil uue tunnuse, kus inimese
pikkuse asemel on kirjas selle inimese pikkuseklass:
pikkusklass=cut(pikkus, breaks=seq(140, 210, 10))
| |
pikkus pikkusklass
164 (160,170]
181 (180,190]
172 (170,180]
160 (150,160]
... ...
|
Loodud tunnust pikkusklass võib aga käsitleda juba nagu tavalist järjestustunnust:
table(pikkusklass)
Tulemuseks saame sagedustabeli (kui mitme tudengi pikkused sattusid antud vahemikku):
pikkusklass
(140,150] (150,160] (160,170] (170,180] (180,190] (190,200] (200,210]
1 53 294 220 76 15 1
Eraldi tunnuse tegemist pole tegelikult tarvis, vahemikeks jagamise ja sagedustabeli tegemise võib kombineerida
ühte ja sellesamasse käsku. Näiteks saame lihtsa sagedustabeli tudengite kaaludele järgmise käsu abil:
table(cut(kaal, seq(40,120,10)))
Tulemus:
(40,50] (50,60] (60,70] (70,80] (80,90] (90,100] (100,110] (110,120]
70 256 193 82 37 14 3 2
Vahemikeks jagamiseks kasutatud cut-käsku saab modifitseerida mitmel moel. Näiteks
kombineerime kõik 100-st kilost suurema kaaluga tudengid ühte klassi kokku (klassi ülempiiriks on lõpmatus):
table(cut(kaal, c(seq(40, 100, 10), Inf) ))
(40,50] (50,60] (60,70] (70,80] (80,90] (90,100] (100,Inf]
70 256 193 82 37 14 5
või võime määrata, mitut erinevat vahemikku soovime kasutada:
table(cut(kaal, 6))
(41.9,54.4] (54.4,67] (67,79.5] (79.5,92] (92,105] (105,117]
161 305 123 51 14 3
Käsu cut teine parameeter määrab vahemike arvu või piirid (kui argumendiks on vektor). Käsk seq võimaldab lihtsalt kerge vaevaga tekitada sobivate väärtustega vektorit - määrame ära, kust alustame, kus lõpetame ja millise sammuga väärtuseid
tekitada. Kui soovime vahemike väärtuseid tekitada sammuga 20 (st soovime, et vahemike pikkuseks oleks 20), võime seda teha nii:
table(cut(kaal, seq(40, 150, 20) ))
(40,60] (60,80] (80,100] (100,120] (120,140]
326 275 51 5 0
Märka: tehti ka vahemik (120..140], kuigi sinna vahemikku ei sattunud ühegi tudengi kaal, kuid vahemikud ei ulatu päriselt
välja soovitud 150-ni, sest 140+20 on juba suurem 150-st ja seega väärtust 160 viimase vahemiku piirina ei kasutatud.
Cut-käsu tulemust või cut-käsu abil loodud tunnusele (pikkusklass) võib luua sagedus-, jaotus jms tabeleid samamoodi, nagu on võimalik koostada tabeleid nominaalsele või järjestustunnusele.
Näiteks mingi pikkusega tudengite protsentuaalset osakaalu võib leida käsuga:
round(prop.table(table(pikkusklass))*100,1)
Kuidas juba vahemikeks jagatud tunnusele (pikkuseklass) saab erinevaid tabeleid teha, selle kohta vaata näiteid
siit.
Põhistatistikud
käsk | | tulemus | | kommentaar |
mean(pikkus)
| |
NA
| |
Aritmeetiline keskmine. Kui tunnus sisaldab puuduvaid väärtuseid (NA), siis me ei tea ka tunnuse väärtuste keskmist.
|
mean(pikkus, na.rm=TRUE)
| |
171.1167
| |
Korraldusega na.rm=TRUE palume enne keskmise arvutamist puuduvad väärtused eemaldada - tulemuseks saame
olemasolevate väärtuste aritmeetilise keskmise. Kui andmestikust kipuvad olema puudu pigem kas väga väikesed (või vastupidi - väga suured) väärtused - näiteks seetõttu, et erakordselt lühikesed inimesed ei taha oma pikkust avalikustada ja keelduvad meile vastust andmast - siis võib olemasolevate väärtuste keskmine osutuda eksitavaks, nihkega hinnanguks populatsiooni keskväärtusele.
Kõigile siin tabelis toodud käskudele võib soovi korral sarnasel moel lisada korralduse na.rm=TRUE.
|
mean(vanus)
| |
20.37519
| |
Kui tunnusel puuduvaid väärtuseid pole, siis pole tarvis ka nende pärast muretseda.
|
median(vanus)
| |
20
| |
Mediaan.
|
exp(mean(log(vanus)))
| |
20.25683
| |
Geomeetriline keskmine.
|
sd(vanus)
| |
2.438005
| |
Standardhälve.
|
quantile(pikkus,
c(0.25,0.5, 0.75),
na.rm=TRUE)
| |
25% 50% 75%
165 170 176
| |
Alumine kvartiil, mediaan ja ülemine kvartiil. Kvartiilid koos mediaaniga jagavad uuritava tunnuse väärtused neljaks võrdse suurusega osaks. Alumisest kvartiilist väiksemaid väärtuseid on 25%, mediaanist peaksid olema väiksemad pooled (50%) uuritava tunnuse väärtustest ja ülemisest kvartiilist väiksemaid väärtuseid on 75%. Kui täpselt sama uuritava tunnuse väärtus võib esineda mitmel uuritaval, siis kvartiilide/mediaani interpretatsioon võib veidi muutuda (kui pooltel uuritavatel on uuritava tunnuse väärtuseks 0, teistel aga nullist suurem, siis on nii mediaan kui ka alumine kvartiil 0).
|
quantile(pikkus,
0.17, na.rm=TRUE)
| |
17%
163
| |
0,17-kvantiil. Uuritava tunnuse väärtus, millest väiksemaid väärtuseid on 17% (17% tudengite pikkus on 163 või väiksem)
|
quantile(pikkus,
seq(0.1,0.9,0.1),
na.rm=TRUE)
| |
10% 20%..
161.9 164.0..
| |
Detsiilid. Detsiilid jagavad uuritava tunnuse väärtused kümneks võrdse suurusega osaks.
|
min(vanus)
| |
18
| |
Miinimum.
|
max(vanus)
| |
41
| |
Maksimum.
|
sd(pikkus,
na.rm=TRUE)/
sqrt(sum(!is.na(pikkus)))
| |
0.3270138
| |
Standardviga.
|
|