nrow(test11) # read
## [1] 1350
ncol(test11) # veerud
## [1] 11
names(test11) # veergude nimed
## [1] "Kool" "Vanus" "Sugu" "Keel"
## [5] "Sõnavara" "Diagrammid" "Andmed" "Informeeritus"
## [9] "tekst" "matemaatika" "ruumiline"
table(test11$Sugu)
##
## 1 2
## 608 742
Protsentuaalse jaotuse saame, kui lisame sagedustabeli ümber funktsiooni prop.table:
prop.table(table(test11$Sugu))
##
## 1 2
## 0.4503704 0.5496296
Keskmine vanus:
mean(test11$Vanus)
## [1] 19.99556
Standardhälve:
sd(test11$Vanus)
## [1] 1.764902
Miinimum:
min(test11$Vanus)
## [1] 17
Maksimum:
max(test11$Vanus)
## [1] 29
#Uuringus osales ... tudengit (... naist ja ... meest). Osalejate keskmine vanus on ... (SD = ...; min = ...; max = ...).
summary(test11)
## Kool Vanus Sugu Keel
## Min. :1.00 Min. :17 1:608 . : 148
## 1st Qu.:1.00 1st Qu.:19 2:742 1 :1128
## Median :1.00 Median :19 2 : 74
## Mean :1.11 Mean :20
## 3rd Qu.:1.00 3rd Qu.:20
## Max. :2.00 Max. :29
## Sõnavara Diagrammid Andmed Informeeritus
## Min. : 3.00 Min. : 2.00 Min. : 0.00 Min. : 1.00
## 1st Qu.:10.00 1st Qu.: 8.00 1st Qu.: 3.00 1st Qu.: 9.00
## Median :12.00 Median :10.00 Median : 5.00 Median :11.00
## Mean :12.19 Mean :10.54 Mean : 5.53 Mean :11.38
## 3rd Qu.:15.00 3rd Qu.:13.00 3rd Qu.: 7.00 3rd Qu.:14.00
## Max. :24.00 Max. :19.00 Max. :15.00 Max. :24.00
## tekst matemaatika ruumiline
## Min. :0.000 Min. : 0.000 Min. : 0.000
## 1st Qu.:2.000 1st Qu.: 5.000 1st Qu.: 7.000
## Median :3.000 Median : 8.000 Median :10.000
## Mean :3.208 Mean : 8.301 Mean : 9.421
## 3rd Qu.:4.000 3rd Qu.:12.000 3rd Qu.:12.000
## Max. :9.000 Max. :19.000 Max. :16.000
library(psych)
## Warning: package 'psych' was built under R version 3.5.1
describe(test11)
## vars n mean sd median trimmed mad min max range skew
## Kool 1 1350 1.11 0.31 1 1.01 0.00 1 2 1 2.50
## Vanus 2 1350 20.00 1.76 19 19.61 0.00 17 29 12 2.72
## Sugu* 3 1350 1.55 0.50 2 1.56 0.00 1 2 1 -0.20
## Keel* 4 1350 1.95 0.40 2 1.99 0.00 1 3 2 -0.43
## Sõnavara 5 1350 12.19 3.46 12 12.14 2.97 3 24 21 0.15
## Diagrammid 6 1350 10.54 3.21 10 10.46 2.97 2 19 17 0.19
## Andmed 7 1350 5.53 2.94 5 5.31 2.97 0 15 15 0.72
## Informeeritus 8 1350 11.38 3.50 11 11.32 2.97 1 24 23 0.19
## tekst 9 1350 3.21 1.66 3 3.14 1.48 0 9 9 0.30
## matemaatika 10 1350 8.30 4.29 8 8.11 4.45 0 19 19 0.34
## ruumiline 11 1350 9.42 3.07 10 9.53 2.97 0 16 16 -0.28
## kurtosis se
## Kool 4.23 0.01
## Vanus 8.55 0.05
## Sugu* -1.96 0.01
## Keel* 2.95 0.01
## Sõnavara -0.29 0.09
## Diagrammid -0.45 0.09
## Andmed 0.50 0.08
## Informeeritus -0.13 0.10
## tekst -0.24 0.05
## matemaatika -0.72 0.12
## ruumiline -0.26 0.08
hist(test11$Andmed)
hist(test11$ruumiline)
#subset(tunnus, kategooria == väärtus) # topelt võrdusmärk tähedab, otsime täpselt antud väärtusega andmeid
subset(test11$tekst, test11$Sugu == 1)# see annab meile teksti mõistmise tulemused kategooria 1 kohta ehk meeste teksti mõistmise tulemsued.
subset(test11$tekst, test11$Sugu == 2)# see annab meile teksti mõistmise tulemused kategooria 2 kohta ehk naiste teksti mõistmise tulemsued.
Meeste keskmine:
mean(subset(test11$tekst, test11$Sugu == 1))
## [1] 3.115132
Naiste keskmine:
mean(subset(test11$tekst, test11$Sugu == 2))
## [1] 3.284367
Tutvustan siin paari uute teemat. Järgmises praktikumis räägin neist lähemalt.
R’i jaoks on kirjutatud tuhendeid lisapakette, mis suurendavad R’i funktsionaalsust. Pakettide eesmärk on pakkuda juurde funktsioone, mis võimaldavad kiiremini teatud analüüse teha. Näiteks on paketis nimega “psych” mitmeid kasulikke funktsioone just sotsiaalteadlastele.
Paketi “psych” installeerimiseks kirjutage RStudio konsoolile:
install.packages("psych")
Paketi allalaadimise peale võib minna natuke aega. Kui pakett on arvutisse installeeritud, siis seda RStudio järgmisel kasutamisel enam uuesti tegema ei pea.
Kui installeerimine on lõpetatud, siis saate paketis olevad funktsioonid teha aktiivseks funktsiooniga library:
library(psych)#selle käsuga teeme antud paketi funktsioonide aktiivseks
Veateade “Warning: package ‘psych’ was built under R version 3.5.1” annab meile lihtsalt teada, et see pakett on loodud varasema R’i versiooni ajal. See asjaolu aga nende funktsioonide tööd ei häiri.
Teeme siinkohal väikse sissejuhatuse nomraaljaotuse testimisse. Histogrammide abil saime üldise ettekujutuse andmete jaotusest, aga me peaksime hindama seda ka statistiliselt. Üks levinumaid statistilisi meetodeid normaaljaotuse kontrollimiseks on Shapiro Wilki test. Selle testi väljundist tuleb vaadata p-value-t ehk p-väärtust. Kui p-value on väiksem kui 0.05, siis ei ole andmed selle testi kohaselt normaaljaotuslikud. Vaatame alatestesti “ruumiline” noormaaljaotust.
Selle testi tegemiseks kasutame funktsiooni shapiro.test(): shapiro.test(x), kus x on numbriline tunnus
shapiro.test(test11$ruumiline)
##
## Shapiro-Wilk normality test
##
## data: test11$ruumiline
## W = 0.98226, p-value = 8.027e-12
Antud juhul on p-väärtus < 8.027e-12 ehk p-väärtus on \(8.027∗10^{-12}\). Sellist kirjapilti kasutatakse väga väikeste väärtuste esitamiseks.
Praktikas leiab harva selle testi põhjal normaalajotusele vastavust, seetõttu on levinud asümmeetriakordaja (skewness) ning ekstsessi (kurtosis) põhjal normaaljaotuse hindamine. Andmeid peetakse normaaljaotusele ligilähedaseks siis, kui asümmeetriakordaja ja järsakusaste/ekstsess on vahemikus -1 kuni 1.
Vaatame, kuidas asümmeetriakordajat (skew) ja ekstsessi (kurtosis) arvutada. Selleks kasutame funktsiooni describe(), mis on paketi “psych”" funktsioonide komplektis.
library(psych)#selle käsuga teeme antud paketi funktsioonide aktiivseks; NB! pakett peab oleme enne arvutisse installeeritud
describe(test11$Andmed)
## vars n mean sd median trimmed mad min max range skew kurtosis
## X1 1 1350 5.53 2.94 5 5.31 2.97 0 15 15 0.72 0.5
## se
## X1 0.08
Väljundi põhjal näeme, et ekstsess (kurtosis) on 0.5 ja asümmeetriakordaja (skew) on 0.72. Seega võime öelda, et asümmeetriakordaja ja ekstsessi põhjal on selle alatesti tulemused ligilähedased normaaljaotusele.