CLT255 Tilastomenetelmät syksy 2008

Mallirakenne kurssityötä varten

Kurssin lopputyön sopiva mitta on n. 10-20 sivua riippuen aiheesta ja oman työn määrästä.

Teoria

  • Aiheen esittely
  • Aineiston esittely
  • Menetelmät
  • Hypoteesit
Tutkimus
  • Analyysi ja testit
  • Tulokset
  • Johtopäätökset
Lähteet, Liitteet
  • (datan yksityiskohtia, omat ohjelmat, loput tulostukset)


Argumentointiin liittyvää:

Mallilaskuja (istunnot 1-3)

Mallilaskuja (istunnot 1-2)


1) a) Anna esimerkki toisistaan riippumattomista tapahtumista A, B
ja toisistaan riippuvista tapahtumista C ja D. Määrää esimerkeillesi
(kuvitteelliset) todennäköisyydet
P(A), P(B), P(A ja B), P(C), P(D), P(C ja D).

  esim:
       A: sataa  P(A)=0.8
       B: on yö  P(B)=0.5
       A,B: on yö ja sataa  P(A,B)=0.4
       C: sataa  P(C)=0.8
       D: sataa kaatamalla P(D)=0.1
       C,D: sataa ja sataa kaatamalla P(C,D)=P(D)=0.1

b) Osoita (A,B)-riippumattomuus ja (C,D)-riippuvuus.

  P(A,B) = P(A) P(B)
       P(C,D) > P(C) P(D)   (ts. C,D-komposotion tn on erisuuri)


2) Muodosta yleinen kaava, jolla ennustetaan kolikonheittokokeen alussa
tulevien peräkkäisten kruunaheittojen määrä, kun yksittäisen
kruunanheiton todennäköisyys P(Kr)=2/3.

Hahmottele tn-jakauman alkua kruunaheittojen määrään X=4 saakka.

  X=i : Kr_1,...,Kr_i,Kl  ==> P(X=i) = (2/3)^i * 1/3

  Hahmotelma (laskut tai piirros)
    i  P(X=i)
    0  0.33333333
    1  0.22222222
    2  0.14814815
    3  0.09876543
    4  0.06584362

 ... tai eri tavalla hahmotettu ongelma ja ratkaisu siihen


3) Seikkailukertomuksessa (60 sivua) mainitaan sankarin nimi 90 kertaa.
Mikä on odotusarvo sankarin nimen esiintymislkm:lle yksittäisellä
sivulla? Hahmottele todennäköisyysfunktiota P(esiintymisiä sivulla).

 E[X]= 90/60 = 3/2

 Tn-jak. mukailee Poissonin jakaumaa.
      (Lähde mainittu luennolla + kalvolla)

 ... tai jokin muu lähteistä löydetty jakauma, joka käy järkeen näille
        parametreille.

 Esitysmuoto X ~ Poisson(lambda=1,5),
     ... tai hahmotelma


Extra (harrastajille):
Laske tämän lauseen sanojen kirjainpituuden keskiarvo ja keskihajonta.

  Sanapituudet n=8 sanalle ovat 5 5 7 7 15 9 2 12.

  Näiden summa on 62.

   Keskiarvo E[X] on 62/8 = 7.75.

   Keskihajonta on sqrt(sum((X-E[X])^2)/(n-1)) = 4.2


 - - - - -

tehtävä 1) Alkeistapahtumat ja ehdolliset todennäköisyydet
Anna esimerkki tapahtumista A ja B, joiden leikkaus on tyhjä 
joukko.
Määritä mielivaltaiset todennäköisyydet P(A) ja P(B).
Ovatko A ja B keskenään riippumattomia? Laske P(A|B).


Olkoon A: "nyt on sunnuntai" 
    ja B: "nyt on keskiviikko"

Leikkaus A ja B on tyhjä: ei ole päiviä jolloin on sekä sunnuntai että 
keskiviikko.


Mikäli B on tosi, A:n täytyy olla epätosi 
--> A ja B ovat toisistaan riippuvia

P(A)=0.14, P(B)=0.14, P(A,B)=0

P(A,B) < P(A)*P(B)

P(A|B) = P(A,B) / P(B) = 0/(1/7) = 0*7 = 0


tehtävä 2) Binomijakauman kertaus
Tutkittavassa virkkeessä on 6 verbiä. Aineistoa tutkimalla on saatu 
selville, että todennäköisyys "verbi on predikaatti" P(V) = 
2/3. Laske tn-jakauma virkkeen eri predikaattiverbien lukumäärille.


Binomikertoimet: choose( 6, 0...6):
1  6 15 20 15  6  1

P(V) = 0.667
P(ei-V) = 0.333

Tn-jakauma:
P(NV=i) = choose(6,i) * P(V)^i * P(ei-V)^(6-i)

i     choose   P(V)^i     P(ei-V)^(6-i)         P(NV=i)  
-----------------------------------------------------------
0     1    1.0000000  0.001363532           0.001363532
1     6    0.6670000  0.004094691           0.016386955
2    15    0.4448890  0.012296370           0.082057798
3    20    0.2967410  0.036926037           0.219149356
4    15    0.1979262  0.110889000           0.329217613
5     6    0.1320168  0.333000000           0.263769547
6     1    0.0880552  1.000000000           0.088055199

tehtävä 3) Tilastolliset suureet
Tutkitaan erään tekstikappaleen virkkeiden pituuksia.
L={17, 18, 13,  5, 20, 18, 19, 10, 18, 15, 12, 17}
Laske näiden keskiarvo, mediaani, varianssi ja keskihajonta.

n = 12
sum(L) = 182
E[L] = 182/12 = 15.17
J = 5 10 12 13 15 17 17 18 18 18 19 20
median(L) = ("J6"+"J7")/2 = 17

var(L) 
= (1/11) * sum((Li - E[L])^2)
= 1/11 * (
(17-17.15)^2 + (18-17.15)^2 +
(13-17.15)^2 + (5-17.15)^2 +
(20-17.15)^2 + (18-17.15)^2 +
(19-17.15)^2 + (10-17.15)^2 +
(18-17.15)^2 + (15-17.15)^2 +
(12-17.15)^2 + (17-17.15)^2 ) 

= 1/11 * sum ( 3.36,   8.03,   4.69, 103.36,  23.36,   8.03,  14.69,  
                26.69, 8.03,  10.03,   3.36 )
= 19.42

sd(L)=sqrt(var(L))=4.40

Mallilaskuja R-ohjelmalla (istunnot 4-10)

Mallilaskuja (istunto 4)


Esimerkkejä muuttujista

5-rivisen matriisin (arvotaulukko) luonti jonosta 1,2...25


> matrix(1:25,nr=5)->a
> a
     [,1] [,2] [,3] [,4] [,5]
[1,]    1    6   11   16   21
[2,]    2    7   12   17   22
[3,]    3    8   13   18   23
[4,]    4    9   14   19   24
[5,]    5   10   15   20   25

viitataan yksittäiseen alkioon
> a[2,3]
[1] 12
viitataan sarakkeeseen 3 riveille 2-4
> a[2:4,3]
[1] 12 13 14
viitataan sarakkeisiin 2-4 riveille 2-4
> a[2:4,2:4]
     [,1] [,2] [,3]
[1,]    7   12   17
[2,]    8   13   18
[3,]    9   14   19
muunnetaan matriisi datakehykseksi (sarakkeista tulee nimettyjä vektoreita)
> data.frame(a)
  X1 X2 X3 X4 X5
1  1  6 11 16 21
2  2  7 12 17 22
3  3  8 13 18 23
4  4  9 14 19 24
5  5 10 15 20 25
myös kehyksen alkioita voidaan käsitellä kuten matriisia
> data.frame(a)[2:4,2:4]
  X2 X3 X4
2  7 12 17
3  8 13 18
4  9 14 19

Tiedoston lukeminen R:ään

Luetaan tiedoston taulukko (1. rivillä on header-kentät) kehykseen i

> read.table("c:/temp/ilmiot.txt",header=T)->i
> i
  Luku KN KP
1    1  6  3
2    2  4  2
3    3  3  3
4    4  4  2
5    5  5  1
6    6  5  0
7    7  4  0
8    8  3  1

Laskutoimituksia

Kehyksen arvovektoreilla voidaan laskea kuten millä tahansa R:n lukuolioilla -- mm. varianssi, keskihajonta = varianssin neliöjuuri, mediaani, keskiarvo, sarakesummat

> var(i$KN)
[1] 1.071429

> var(i$KP)
[1] 1.428571

> sd(i$KP)
[1] 1.195229

> sqrt(var(i$KP))
[1] 1.195229

> median(i$KP)
[1] 1.5

> mean(i$KP)
[1] 1.5

> colSums(i)
Luku   KN   KP 
  36   34   12 
lukujononen järjestäminen
> i$KN
[1] 6 4 3 4 5 5 4 3

> sort(i$KN)
[1] 3 3 4 4 4 5 5 6

> sort(i$KN)[2:7]
[1] 3 4 4 4 5 5

Taulun järjestäminen yhden sarakkeen mukaan

> i[order(i$KN),]
  Luku KN KP
3    3  3  3
8    8  3  1
2    2  4  2
4    4  4  2
7    7  4  0
5    5  5  1
6    6  5  0
1    1  6  3

Huom: order palauttaa indeksiluvut arvojen suuruusjärjestyksessä (viittaukset arvojen sijaan)

ks myös Baayen, I luku


Kombinatoriikkaa

Pohdi seuraavia:

> choose(5,2)
[1] 10
> factorial(5)
[1] 120
> choose(39,7)
[1] 15380937



Jakaumien funktioita (ks. Baayen II)

> dbinom(0:12,12,0.5)
 [1] 0.0002441406 0.0029296875 0.0161132812 0.0537109375 0.1208496094
 [6] 0.1933593750 0.2255859375 0.1933593750 0.1208496094 0.0537109375
[11] 0.0161132812 0.0029296875 0.0002441406

Plottauksia R:llä

> barplot(dbinom(0:12,12,0.5))

> barplot(i$KP)

> hist(i$KN,breaks=0:8)

Mallilaskuja (istunto 5)

Satunnaisgenerointia:


> runif(15,10,20)->x
> runif(15,10,20)->y
> x
 [1] 16.75400 17.76225 10.57959 18.81558 16.84666 12.77052 18.47926 16.47007 11.93020 14.59462 16.36476 16.78390
[13] 15.78640 14.31513 15.55003
> y
 [1] 10.17321 14.25602 12.39222 15.76563 12.86460 18.31835 13.10746 19.33638 15.17200 16.72962 12.07563 16.99448
[13] 12.59363 11.62034 10.92087
> x+y
 [1] 26.92721 32.01827 22.97181 34.58121 29.71126 31.08887 31.58672 35.80646 27.10220 31.32424 28.44038 33.77838
[13] 28.38004 25.93547 26.47089


Macbeth-tiedoston lukeminen:

> read.table("d:/user/snyrkko/Desktop/clt255/Macbeth_lemmas.txt")->L
> summary(L)
       V1      
 the    : 171  
 and    : 137  
 i      : 128  
 you    : 122  
 be     : 120  
 he     : 101  
 (Other):3322

Taulukoidaan lemmat (saadaan lemmafrekvenssit)
  

> xtabs(L)->F

> summary(F)
Number of cases in table: 4101 
Number of factors: 1 

Noudattavatko frekvenssit (järjestettynä) "Zipfin käyrää"

> plot(sort(F,decreasing=T)[1:200])
> lines(171/(1:200),col='red')


Kertausta: tiedoston lukeminen taulukkokehykseen

> read.table("c:/temp/verbit.txt",header=T,fill=T)->v

> v
   luku APV PPV KP
1     i  14  11 NA
2    ii  13  23  2
3  ...

Summary-funktio

> summary(v)
      luku        APV             PPV              KP     
 1      :1   Min.   : 4.00   Min.   : 7.00   Min.   :1.0  
 2      :1   1st Qu.:14.75   1st Qu.:10.75   1st Qu.:1.0  
 3      :1   Median :23.50   Median :12.50   Median :1.5  
 4      :1   Mean   :28.42   Mean   :21.25   Mean   :2.0  
 5      :1   3rd Qu.:38.50   3rd Qu.:24.00   3rd Qu.:2.5  
 6      :1   Max.   :67.00   Max.   :68.00   Max.   :4.0  
 (Other):6                                   NA's   :8.0 

> v$APV
 [1] 14 13 15  4 67 23 24 54 43 37 27 20
> sort(v$APV)
 [1]  4 13 14 15 20 23 24 27 37 43 54 67
> sort(v$APV)[2:11]
 [1] 13 14 15 20 23 24 27 37 43 54

> summary(sort(v$APV)[2:11])
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
  13.00   16.25   23.50   27.00   34.50   54.00 
> hist(sort(v$APV)[2:11])


Rivien poiminta
> v[1:5,]
  luku APV PPV KP
1    i  14  11 NA
2   ii  13  23  2
3  iii  15  11 NA
4   iv   4   8 NA
5    1  67  68 NA
Sarakkeiden poiminta:
> v[,2:3]
   APV PPV
1   14  11
2   13  23
3   15  11
4    4   8
5   67  68
6   23   7
7   24  14
8   54  43
9   43  22
10  37  27
11  27  11
12  20  10

Graafista tutkimista:

> plot(v$APV,col="blue")
> points(v$PPV,col="red")
> lines(v$PPV,col="red")
> lines(v$APV,col="blue")


Mallilaskuja (istunto 6)


# Sanalistan lukeminen ohjelmaan, osien luonti 

read.table("Documents/2008/opetus/Macbeth_lemmas.txt")->M
nrow(M)
rep(1:14,each=300)[1:4101]->M$chunk
summary(M)

# nimetään sarakkeet uuteen L-kehykseen

data.frame(lemma=M$V1,osa=M$chunk)->L
summary(L)

# Ristiintabulointia: kiinnitetään ensin L-kehys
# ja tutkitaan matriisin transpoosia t()

attach(L)
xtabs(~lemma+osa)->X
rowSums(X); colSums(X)
X[1:20,]
t(X)->Y; Y[,1:10]

# top-14 sanalista (mieti, mitä nämä tekevät)
sort(rowSums(X),decreasing=T)[1:14]

order(rowSums(X),decreasing=T)[1:14]

X[order(rowSums(X),decreasing=T)[1:14],]->Y; Y
barplot(t(Y))

# Sanafrekvenssien graafista tarkastelua eri tekstin osissa

X["you",]
plot(X["you",])
lines(X["the",], col='red',lty=2)

# sanafrekvenssit eri osissa,
# histogrammi
# ja sopiva jako seq-käskyllä

library(MASS)
truehist(X["you",])

seq(-.5,30.5,2)
truehist(X["you",],breaks=seq(-.5,30.5,2))

# The-sanan frekvenssi eri tekstiosissa, verrattuna teoreettiseen Poisson-jakaumaan

mean(X["the",])
truehist(X["the",],breaks=seq(-.5,30.5,1))
lines(0:40,dpois(0:40,mean(X["the",])),col='red',lty=2)

# Poisson-jakautuneen frekvenssidatan simulointia:

truehist(rpois(1400,12.2),breaks=-.5:40)
truehist(rpois(140,12.2),breaks=-.5:40)
truehist(rpois(14,12.2),breaks=-.5:40)
lines(0:40,dpois(0:40,mean(X["the",])),col='red',lty=2)

Mallilaskuja (istunto 7)



# simuloidaan mallidataa (huomaa miten sarakkeet nimetään)

> data.frame(luku=1:12,KP=rpois(12,3),KN=rbinom(12,16,0.25))->Ilm
> Ilm
   luku KP KN
1     1  6  3
2     2  3  8
3     3  1  5
4     4  2  3
...
12   12  3  4

# Kirjoitetaan simuloitu data tiedostoon

> write.table(Ilm,"Desktop/ilmiot.txt")

# Luetaan data tiedostosta...

> read.table("Desktop/ilmiot.txt")
   luku KP KN
1     1  6  3
....
12   12  3  4

# Tutki esim. Notepadilla, miltä tiedosto näyttää


# Keskiarvofunktio osaa myös karsia äärimmäisiä arvoja

> ?mean
> mean(Ilm$KN)
[1] 4.5

# Karsitaan 1/6 datasta kummastakin päästä (2 + 2 riviä):

> mean(Ilm$KN,trim=1/6)
[1] 4.25

# Ja 1/12 osa kummastakin (1 + 1 riviä):

> mean(Ilm$KN,trim=1/12)
[1] 4.4

# Eli sama kuin:

> mean(sort(Ilm$KN)[2:11])
[1] 4.4


Mallilaskuja (istunto 8)


# Tutustutaan muutamiin perustesteihin. 
# Luodaan ensin satunnaista dataa

> w <- rbinom(400,8,.5)
> v <- rbinom(400,10,.4)

# Katsotaan miltä data näyttää graafisesti

> library(MASS)
> truehist(w)
> lines(xtabs(~v)/length(v),lty=2,col='red')

# Tutkitaan, ovatko w ja v samanlaisia jakaumaltaan

> ks.test(jitter(v),jitter(w))

        Two-sample Kolmogorov-Smirnov test

data:  jitter(v) and jitter(w) 
D = 0.0575, p-value = 0.5229
alternative hypothesis: two-sided 

# KS-testi antaa korkean p-arvon (>0.05), joten eroa ei havaita

# (Kiinnostuksen vuoksi sama Pearsonin Khiin neliö -testillä)

> xtabs(~v)[2:9]
v
  1   2   3   4   5   6   7   8 
 14  51  78 108  84  38  21   4 
> xtabs(~w)
w
  1   2   3   4   5   6   7   8 
 14  37  98 104  80  43  20   4 
> chisq.test(xtabs(~w),xtabs(~v)[2:9])

        Pearson's Chi-squared test

data:  xtabs(~w) and xtabs(~v)[2:9] 
X-squared = 56, df = 49, p-value = 0.2289

Warning message:
Chi-squared approximation may be incorrect in: chisq.test(xtabs(~w), xtabs(~v)[2:9]) 

# Khiin neliötestikään ei hylännyt nollahypoteesia -- jakaumat ovat läheiset

Mallilaskuja (istunto 9)


# Tutkitaan normaalijakautunutta simuloitua dataa

> x <- rnorm(30,5,2)
> library(MASS)
> truehist(x)
> truehist(x,h=1)
> x
 [1] 4.7601324 5.5147945 7.9008357 7.8590826 6.1449377 7.9372387 4.0367647
 [8] 6.1528672 2.4145494 5.0178948 7.4266421 2.0053776 6.8895266 5.8930673
[15] 0.5991618 4.2711854 2.9947487 7.1551329 6.3603284 7.1475704 6.8409396
[22] 5.0936343 4.6572052 5.9810475 7.5771950 5.6447109 3.1885019 7.1662632
[29] 3.4317064 6.4118979


# Shapiro-testi arvioi, onko data normaalijakautunutta

> shapiro.test(x)

        Shapiro-Wilk normality test

data:  x 
W = 0.9371, p-value = 0.07584

# p-arvo ylittää 0.05 -- tulkitaan normaalijakautuneeksi


# Esimerkki t-testistä -- luodaan referenssijoukko y
# ja tutkitaan onko x:n ja y:n keskiarvo sama

> y <- rnorm(40, 4,4)
> truehist(y,h=1)

# Histogrammista on vaikeaa sanoa... tutkitaan t-testillä

> t.test(x,y)

        Welch Two Sample t-test

data:  x and y 
t = 1.3132, df = 57.387, p-value = 0.1943
alternative hypothesis: true difference in means is not equal to 0 
95 percent confidence interval:
 -0.5226248  2.5148441 
sample estimates:
mean of x mean of y 
 5.482498  4.486388 

# y:n keskiarvo kuuluu 95% luottamusväliin


# Tehdään Fisherin F-testi x:n ja y:n varianssien yhtäsuuruudelle

> var.test(x,y)

        F test to compare two variances

data:  x and y 
F = 0.2039, num df = 29, denom df = 39, p-value = 2.853e-05
alternative hypothesis: true ratio of variances is not equal to 1 
95 percent confidence interval:
 0.1039545 0.4145524 
sample estimates:
ratio of variances 
         0.2039452 

> var.test(x,y)$p.value
[1] 2.852553e-05

# p-arvo on heikko (<0.05) --  varianssi  ei sama

# Esimerkki ANOVA-testistä

> read.table("c:/Documents and Settings/opiskelija/My Documents/clt255/aineisto.txt",header=T) -> a
> a
   luku kertoja aika KN KP
1     i       X    A  4  7
2    ii       X    A  3  4
3   iii       Y    B  3  3
4     1       X    A  3  2
5     2       X    A  5  5
6     3       Y    A  8  3
7     3       X    A  4  5
8     3       Z    A  5  2
9     4       X    A  3  6
10    5       X    A  5  0
11    6       X    A  2  1
12    7       Y    B  1  3
13    8       X    B  4  1
14    9       X    B  0  2
15   10       Y    B  7  1
16   10       X    B  3  0
17   11       Y    B  3  3
18   12       Y    B  4  1
> attach(a)

# Yhden faktorin ANOVA

> summary(aov(KP~aika))
            Df Sum Sq Mean Sq F value  Pr(>F)  
aika         1 13.611  13.611  3.8889 0.06615 .
Residuals   16 56.000   3.500                  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 

# 90% luottamusvälillä (10% riskitasolla) voimme epäillä,
# että A- ja B-ajalla on vaikutusta kaksoispassiivin
# (KP) esiintymiseen

# Kahden faktorin (+ yhteisefekti) ANOVA

> summary(aov(KP~aika*kertoja))
             Df Sum Sq Mean Sq F value  Pr(>F)  
aika          1 13.611  13.611  3.5178 0.08335 .
kertoja       2  3.407   1.704  0.4403 0.65311  
aika:kertoja  1  2.293   2.293  0.5926 0.45517  
Residuals    13 50.300   3.869                  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 

# Yhteisvaikutusta (Kertoja ja aika) ei havaittu

Mallilaskuja (istunto 10)

21.11.2008


# Luetaan Forsyten tarun lemmat ja sanaluokat FF-kehykseen ja kiinnitetään se...

> read.table("c:/Documents and Settings/opiskelija/Desktop/Forsyte_lemma_pos.txt")->F
> data.frame(lemma=F$V1, pos=F$V2)->FF
> summary(FF)
     lemma             pos       
 he     : 17337   N      :66905  
 the    : 14741   V      :52085  
 be     : 11609   PRON   :49084  
 and    :  9519   PREP   :33771  
 of     :  8272   DET    :28864  
 to     :  8031   ADV    :26037  
 (Other):252247   (Other):65010  
> attach(FF)

# Tehdään sanaluokasta merkkijonon sijaan faktorityyppinen arvojoukko (nopeuttaa laskentaa)

> as.factor(pos)->posf

Tutkitaan sanaluokkien frekvenssejä tekstissä

> table(posf)
posf
     A   ABBR    ADV     CC     CS    DET     EN    ING INTERJ      N    NUM 
 20991    643  26037  11959   5099  28864   8964   5802    429  66905   2718 
  PREP   PRON      V      X 
 33771  49084  52085   8405 

# Tutkitaan näitä graafisesti

> barplot(sort(table(posf)))

# Jaetaan teksti 10 osaan ja kerrataan ristiintaulukointia

> floor(seq(1,10.999,length=length(lemma)))->chunk

> xtabs(~posf+chunk)->poschunk
> xtabs(~posf+chunk)
        chunk
posf        1    2    3    4    5    6    7    8    9   10
  A      2422 2245 2230 1969 2107 2009 2003 2117 1945 1944
  ABBR     62   81   88   49   38   84   51   54   64   72
  ADV    2197 2403 2381 2619 2873 2729 2745 2756 2664 2670
  CC     1077 1092 1172 1322 1191 1169 1180 1256 1226 1274
  CS      452  533  524  523  482  525  550  516  504  490
  DET    3280 3207 3289 2967 2750 2590 2726 2652 2636 2767
  EN      952  981  871  904  959  842  898  887  757  913
  ING     574  651  638  572  545  615  562  526  577  542
  INTERJ   24   46   17   27   47   49   45   86   50   38
  N      7205 6827 6830 6347 6640 6497 6586 6742 6590 6641
  NUM     273  266  233  219  330  279  245  322  252  299
  PREP   3795 3662 3830 3366 3265 3198 3168 3195 3069 3223
  PRON   4469 4505 4525 5093 4842 5110 4985 5122 5287 5146
  V      4644 4868 4744 5327 5283 5563 5525 5194 5651 5286
  X       753  812  807  874  827  920  910  753  907  842



# Tehdään laskennallinen malli  (tN) substantiivien ("N") määrälle osaa kohti ("V":n määrän perusteella)

> poschunk["N",]
   1    2    3    4    5    6    7    8    9   10 
7205 6827 6830 6347 6640 6497 6586 6742 6590 6641 

> poschunk["V",]
   1    2    3    4    5    6    7    8    9   10 
4644 4868 4744 5327 5283 5563 5525 5194 5651 5286 

> mean(poschunk["N",])/ mean(poschunk["V",])
[1] 1.284535
> floor(poschunk["V",]*1.285)->tN
> tN
   1    2    3    4    5    6    7    8    9   10 
5967 6255 6096 6845 6788 7148 7099 6674 7261 6792 


# Tutkitaan Khiin neliötestillä, noudattaako tN oikeaa N-frekvenssiä

> chisq.test(poschunk["N",],tN)

        Pearson's Chi-squared test

data:  poschunk["N", ] and tN 
X-squared = 90, df = 81, p-value = 0.2313

# Yllättävä havainto - noudattaa

# Tutkitaan vielä graafisesti

> plot(tN)
> lines(poschunk["N",],lty=2)

ALERT! Tehtäviä ei voi suorittaa kopioimalla tätä tekstiä mailiin ja lähettämällä sellaisenaan assistentille.

ALERT! Vilppiyritykset johtavat toimenpiteisiin.

Topic revision: r17 - 2008-12-05 - SeppoNyrkko
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2018 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback