[viesti Survo-keskustelupalstalla (2001-2013)]
Kirjoittaja: | Seppo Mustonen |
---|---|
Sähköposti: | - |
Päiväys: | 7.12.2002 16:35 |
Survossa havaintoaineistoista voi poimia tietoa toimituskenttään esim. editoriaalisen tai kosketuslaskennan käyttöön, raportointiin tai muuten vain katseltavaksi monin eri tavoin (esim. FILE LOAD -komennolla). Olen havainnut, että joskus on tarpeen ottaa esiin jokin yksittäinen tieto. Esim. jos haluaa urkkia demotiedostosta KUNNAT, mikä on aikoinaan ollut Helsingin asukasluku, se onnistuu tietenkin helposti käyttämällä esim. komentoa FILE SHOW KUNNAT ja etsimällä hakunapilla Helsinki tai suoraan vaikkapa komennolla FILE LOAD -KUNNAT,CUR+1 / VARS=Väestö CASES=Kunta:Helsinki 483057 Mielessäni on ollut jonkin aikaa luoda vielä helpompi tapa samaan tyyliin kuin matriisien alkioita saattaa käyttää editoriaalisessa laskennassa (ARIT?:V,M). Alustavasti olen toteuttanut asian seuraavassa muodossa. Helsingin asukasluku KUNNAT-tiedostosta saadaan aktivoimalla DAT_KUNNAT(Helsinki,Väestö)=_ jolloin vastaukseksi tulee luonnollisesti DAT_KUNNAT(Helsinki,Väestö)=483057 . Siis vastaavasti kuin matriisin alkioita pääsee poimimaan "MAT_-funktiolla", havaintoaineistojen muuttujien numeerisia arvoja saa esiin "DAT_-funktiolla" olipa datan esitystapa mikä tahansa Survon sallimista (siis .SVO-datatiedosto, havaintolista tai havaintotaulukko toimituskentässä ja jopa matriisitiedosto). DAT on raskaampi kuin MAT enkä ole halunnut rasittaa sillä Survon editoria. Siksi DAT-funktiota varten on aivan oma erillinen ohjelmamoduli _DAT_.EXE (mutta siitä käyttäjän ei tarvitse tietää mitään). DAT-funktion varsinainen tehokäyttöalue lienee sukrojen yhteydessä, mutta valtavien tietomäärien systemaattiseen tai ehdolliseen poimintaan sitä ei kannata käyttää, koska entiset konstit ovat silloin parempia. Oletusarvoisesti DAT lähtee siitä, että aineistossa havainnon nimi (kuten KUNNAT-tiedostossa muuttuja Kunta) on ensimmäisenä muuttujana. Se sallii kuitenkin myös mm. havainnon järjestys- numeron havainnon nimen paikalla. Samoin muuttujan nimen paikalla voi olla muuttujan järjestys- numero aineistossa. Alla muutamia näytteitä uuden DAT-funktion käytöstä. Siirry tarvittaessa perusdatahakemistoon esim. komennolla CD <Survo>\U\D koska sieltä löytyvät tiedostot KUNNAT.SVO, DECA.SVO ja WORLD99.SVO. DAT_KUNNAT(Helsinki,Väestö)=483057 DAT_KUNNAT(31,Väestö)=7954 (Havainto nro.31 on Halikko) DAT_KUNNAT(Helsinki,3)=483057 (Väestö on muuttuja nro.3) DAT_KUNNAT(Helsinki,Ala)=176.87 DAT_KUNNAT(Helsinki,Palvelu)=7 A1=DAT_KUNNAT(Helsinki,Ala) V1=DAT_KUNNAT(Helsinki,Väestö) A2=DAT_KUNNAT(Inari,Ala) V2=DAT_KUNNAT(Inari,Väestö) A2/A1=86.227624809182 V2/V1=0.01415774949954 Tällaisista virheistä tulee myös sanalliset ilmoitukset: DAT_KUNNAT(Helsinki,XXX)=error (tuntematon muuttuja) DAT_KUNNAT(Töölö,Väestö)=error (tuntematon havainto) DAT_KUKKUA(Helsinki,Väestö)=error (tuntematon aineisto) DAT_DECA(Hedmark,Javelin)=975 DATA KOE:(X,Y) 1,2 3,4 5,8 7,10 DAT_KOE(4,1)=7 DAT_KOE(4,2)=10 MAT SAVE A / Talleta ensin matriisi! MATRIX A /// S1 S2 S3 R1 11 12 13 R2 21 22 23 R3 31 32 33 DAT_A.MAT(R2,S2)=22 mutta paremmin MAT_A(R2,S2)=22 DATA MAAT Maa Kahvi Tee Olut Viini Viina Suomi 12.5 0.15 54.7 7.6 2.7 Ruotsi 12.9 0.30 58.3 7.9 2.9 Norja 9.4 0.19 43.5 3.1 1.8 Tanska 11.8 0.41 113.9 10.4 1.7 Englanti 1.8 3.49 113.7 5.1 1.4 Irlanti 0.2 3.73 124.5 3.8 1.9 Hollanti 9.2 0.58 75.5 9.7 2.7 Sveitsi 9.1 0.25 73.5 44.9 2.1 Ranska 5.2 0.10 44.5 104.3 2.5 Italia 3.6 0.06 13.6 106.6 2.0 Espanja 2.5 0.03 43.6 73.2 2.7 Portugali 2.2 0.03 27.5 89.3 0.9 DAT_MAAT(Sveitsi,Viini)=44.9 DAT_MAAT(Suomi,Viina)/DAT_MAAT(Portugali,Viina)=3 ....................................................................... F=DAT_WORLD99(Finland,Pop99) Pop99 is population (mil) in 1999 S=DAT_WORLD99(Sweden,Pop99) N=DAT_WORLD99(Norway,Pop99) D=DAT_WORLD99(Denmark,Pop99) Nordic=10^6*(F+S+N+D) Nordic=23781000 (Population of Nordic countries in 1999) ....................................................................... Jos nimimuuttuja ei ole aineistossa ensimmäisenä, se voidaan osoittaa merkinnällä Nimimuuttuja>Nimi kuten esim. DAT_KUNNAT(Kunta>Helsinki,Väestö)=483057 (vaikka tässä tuo yleisempi merkintä ei ole tarpeellinen). Kun "nimimuuttuja" voi saada samoja arvoja, kuten Lääni KUNNAT- tiedostossa, tulos poimitaan järjestyksessä ensimmäistä tapauksesta eli esim. DAT_KUNNAT(Lääni>UUS,Väestö)=2039 (Artjärven väkiluku) ....................................................................... Uskallan toivoa, että aktiiviset survoilijat löytävät ovelia sovelluksia tälle uudelle ominaisuudelle. Olisi mukava kuulla mielipiteitä ehdotuksesta ennenkuin tehdään lopullisempia päätöksiä DAT-funktion kohtalosta. Se tulee käyttöön todennäköisesti SURVO MM:n versiossa 1.30. - Seppo
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!