[vastaus aiempaan viestiin]
| Kirjoittaja: | Seppo Mustonen |
|---|---|
| Sähköposti: | - |
| Päiväys: | 9.5.2003 12:25 |
On ilmeistä, ettei toivomaasi log-vuosimuutosten laskentaa saa Survolla
suoraan tehdyksi ilman pientä parannusta TRANSFORM-toimintoon.
Teinkin välittömästi uuden muunnoksen
TRANSFORM <data> BY #DIFF
ko. Survo-ohjelmaan ja se laskee (ehdoitta) peräkkäisten havaintoarvojen
erotukset kaikilla aktiivisilla muuttujilla ja korvaa siis alkuperäiset
havaintoarvot näillä erotuksilla. Vain ensimmäinen havainto jää
ennalleen.
Seuraava suppea esimerkki näyttää, miten saat laskettua (mielestäni
varsin kätevästi) ko. muutokset ositteittain:
.......................................................................
Koeaineisto, jossa kolme varsinaista muuttujaa X1,X2,X3, peräkkäisiä
vuosia 3 ja ositteita 3:
DATA K
Nimi Vuosi X1 X2 X3
N1 1 11.243 11.533 12.036
N1 2 11.476 11.754 12.576
N1 3 11.612 11.833 12.837
N2 1 20.333 20.444 20.541
N2 2 20.461 20.731 20.786
N2 3 20.600 20.889 21.037
N3 1 32.123 32.590 32.959
N3 2 32.752 32.920 33.166
N3 3 33.566 33.228 34.026
FILE DEL K2
FILE COPY K TO K2 / Siirto Survon datatiedostoon K2
.......................................................................
MASK=--AAA / Aktiivisten muuttujien osoittaminen
laajassa aineistossa tietenkin FILE ACTIVATE-komennolla
TRANSFORM K2 BY log(X) / Aktiivisten muuttujien logaritmointi
TRANSFORM K2 BY #DIFF / Erotusten laskenta (tämä on siis uusi juttu!)
.......................................................................
FILE LOAD K2 / Aineisto muunnoksen jälkeen
DATA K2*,A,B,C
Ni Vuosi X1 X2 X3
N1 1 2.420 2.445 2.488
N1 2 0.021 0.019 0.044
N1 3 0.012 0.007 0.021
N2 1 0.560 0.547 0.470
N2 2 0.006 0.014 0.012
N2 3 0.007 0.008 0.012
N3 1 0.444 0.445 0.449
N3 2 0.019 0.010 0.006
N3 3 0.025 0.009 0.026
.......................................................................
"Turhien havaintojen poisto":
IND=Vuosi,2,3
FILE DEL K3
FILE COPY K2 TO K3 / Kopiointi tiedostoksi K3
.......................................................................
FILE LOAD K3 / Lopullinen log-vuosimuutosten aineisto
DATA K3*,D,E,F
Ni Vuosi X1 X2 X3
N1 2 0.021 0.019 0.044
N1 3 0.012 0.007 0.021
N2 2 0.006 0.014 0.012
N2 3 0.007 0.008 0.012
N3 2 0.019 0.010 0.006
N3 3 0.025 0.009 0.026
Lähetän uusitun ohjelmatiedoston _TRANSFO.EXE sinulle henkilökohtaisen
viestin liitetiedostona, jotta pääset kokeilemaan.
Se tulee kopioida SURVO MM:n ohjelmahakemistoon <Survo>\U\
entisen version tilalle.
Tämä uusi TRANSFORM <data> BY #DIFF tulee mukaan yleisesti seuraavassa
versiossa 1.35.
> Yleisemminkin olen kiinnostunut siitä, miten SURVOSSA hoidetaan
> aineiston splittaukset silloin, kun samoja operaatiot (esim.
> regressiomallin estimointi) tehdään vaikkapa 500 sadalle ositteelle.
> Tällöin IND, CASES,.. rajoittimien avulla käsipelillä puuhastelu ei
> ole kovinkaan tervejärkistä meininkiä.
Olet oikeassa, mutta "käsipeli" on mielestäni tässä täysin mahdollista
korvata tekemällä sopivia sukroja, joilla saat koko homman
automatisoiduksi.
Terveisin Seppo M.
| Vastaukset: |
|---|
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!