Re: Matriisitulkin laajennuksia

[vastaus aiempaan viestiin]

Kirjoittaja: Seppo Mustonen
Sähköposti:    -
Päiväys: 25.3.2003 10:03

Reijo Sund kirjoitti mm.:
> Lisätoivomuksena olisi lähtövektorista (tai matriisista)
> bootstrap-replikaatin ("satunnaisotoksen takaisinpanolla") tuottava
> operaatio. Yksinkertainen ja usein tarvittava temppu.

Tämä vaihtoehto todella puuttuu, vaikka matriisitulkissa otoksia on
voinut tuottaa "ilman takaisinpanoa" komennolla MAT #SAMPLES jne.
Olenkin nyt toteuttanut alustavasti uuden komentoparin

MAT C=#SAMPLE(A,m,URS,siemenluku) / Unrestricted Random Sampling
MAT C=#SAMPLE(A,m,SRS,siemenluku) / Simple Random Sampling

jotka tekevät matriisin A riveistä m "havainnon" otoksen ja tallettavat
otokseen poimitut rivit valintajärjestyksessä matriisiksi C.
Edellissä otanta tapahtuu palauttaen (takaisinpanolla) ja jälkimmäisessä
palauttamatta (ilman takaisin panoa).

Esimerkki:
Tehdään ensin "populaatiomatriisi" A:

n=100
MAT A=ZER(n,5)
MAT #TRANSFORM A BY int(1000*rand(2003))
MAT RLABELS "R" TO A

Poimitaan tästä n x 5 -matriisista 20 rivin otos "takaisinpanolla"
eli Reijon toivomalla tavalla:

MAT C=#SAMPLE(A,20,URS,24565684)
MAT LOAD C
MATRIX C
Sample_of_size_20_from_A
///             1        2        3        4        5
R85            58      286      708      169      697
R90           168      688       49      403      201
R94           195      936      367      267      548
R77           592      167      848      528      506
R2            342      981      854      962       64
R27           448      750      787      321      251
R93           265      391      529      539      994
R13           175      103      687      418      388
R70           415      417      652      636      410
R72           186      648      505       31      770
R81            17      727      998      311      215
R46           138      679      174      191      926
R64           870      644      821      993      741
R20           880      526      345      400      591
R71            32      784       17      477      972
R27           448      750      787      321      251
R85            58      286      708      169      697
R6            800      306      574      708      558
R35           531      298      263        3      600
R5            200      472      505      750      901

Huom. tässä rivit R27 ja R85 on on poimittu kahdesti.

Harkinnassani on ollut jo pitempään erityisen SAMPLE-operaation
lisääminen Survoon, vaikka otantaa eri periaatteilla on kyllä
pystynyt harrastamaan jo nykyisinkin yhdistelemällä olemassa olevia
toimintoja.
SAMPLE kohdistuisi lähinnä Survon datatiedostoihin ja tekisi otoksia
esim. tyyliin
SAMPLE OTOS1 OF KUNNAT / TYPE=URS SIZE=50

Muita otantatapoja olisivat ainakin TYPE=SRS ja TYPE=SYSTEMATIC.
Keskustelin asiasta Reijon kanssa. Hän ehdotti, että tähän voisi
sisältyä myös optiona usean otoksen luonti peräkanaa samaan
tiedostoon (eri otokset indikaattorimuuttujan osoittamina), jolloin
pääsisi suoraan FILE AGGR:illa tekemään bootstrap-tekniikan mukaisia
yhteenvetoja.
Ennen SAMPLE-operaation toteutusta jään odottamaan lisäkommentteja.
Em. MAT #SAMPLE:t tulevat mukaan versiosta 1.34 lähtien.

Vastaukset:
[ei vastauksia]

Survo-keskustelupalstan (2001-2013) viestit arkistoitiin aika ajoin sukrolla, joka automaattisesti rakensi viesteistä (yli 1600 kpl) HTML-muotoisen sivukokonaisuuden. Vuoden 2013 alusta Survo-keskustelua on jatkettu entistäkin aktiivisemmin osoitteessa forum.survo.fi. Tervetuloa mukaan!

Etusivu  |  Keskustelu
Copyright © Survo Systems 2001-2013. All rights reserved.
Updated 2013-06-15.