[viesti Survo-keskustelupalstalla (2001-2013)]
Kirjoittaja: | Seppo Mustonen |
---|---|
Sähköposti: | - |
Päiväys: | 22.5.2005 10:03 |
Olen kevään aikana katsastellut mahdollisuuksia käyttää R-ohjelmistoa Survon välityksellä niin, että survoilijat voivat teettää R:llä esim. sellaisia tilastollisia analyyseja ja kuvia, joita ei Survossa ole. Vapaasti käyttöön saatavassa R-ohjelmistossa http://www.R-project.org on runsaasti harvinaisia ja uusia tilastollisia analyysimenetelmiä, joita Survon käyttäjät pääsevät nyt suoraan hyödyntämään. Se edellyttää R:n käyttötapojen (varsin ohjelmoinninoloista!) ainakin osittaista omaksumista. Survo ja R tukevat kuitenkin näin hyvin toisiaan. Tällä hetkellä on mahdollista toimia seuraavasti: 1) Sukrolla /RDAT talletetaan R:lle sopivassa muodossa tutkittava aineisto (tai useita sellaisia) tekstitiedostoon. Esim. DECA-aineistosta nimitiedon ja ottelijan pituus tallentuu näin VARS=Name,Height /RDAT DECA,TEST.DAT tekstitiedostoon TEST.DAT. 2) Kirjoitetaan toimituskenttään R-komentojono ja talletetaan se R-päätteiseksi tekstitiedostoksi: SAVEP CUR+1,CUR+9,test.r # Ensimmäinen käsky lukee tiedoston R:n datakehikoksi (dataframe) dat: dat <- read.table("TEST.DAT") attach(dat) cat("Height:") cat("\nstandard deviation") sd(Height) cat("mean absolute deviation") mad(Height) detach(dat) 3) R käynnistyy (täysin näkymättömästi) sukrokomennolla /SR, jonka parametrina on komentojonotiedoston nimi eli esimerkissä komento on /SR test.r ja se tuottaa (piiloon jäävän tekstitedoston kautta) toimituskenttään tulokset tässä tapauksessa muodossa: Height: standard deviation[1] 5.090493 mean absolute deviation[1] 5.1891 - - - Jotta R mukautuu Survon toivomuksiin, sukro /SR edellyttää, että hakemistoon <Survo>\U\SYS on talletettu alustustiedosto SURVO.R Sen sisältöä käyttäjä voi laajentaa ja muuttaa. Kun siirrät tämän viestin toimituskenttään voit asentaa sen seuraavalla SAVEP-komennolla. SAVEP CUR+1,CUR+18,<Survo>\U\SYS\SURVO.R # R environment settings in SURVO MM options(digits=7) # Make an Encapsulated PostScript file survo.eps <- function(name) { postscript(name, horizontal=F, pagecentre=F, width=6, height=6) } # Make a histogram with fitted normal distribution hist.with.normal <- function(x,xlab=deparse(substitute(x)),...) { h <- hist(x,plot=F,...) s <- sd(x) m <- mean(x) ylim <- range(0,h$density,dnorm(0,sd=s)) hist(x,freq=F,ylim=ylim,xlab=xlab, main=paste("Histogram of ",xlab),...) curve(dnorm(x,m,s),add=T) } Tässä alustavassa SURVO.R-versiossa asetetaan tulostustarkkuus ja määritellään kaksi R-funktiota. Funktio survo.eps() ilmoittaa, että seuraava kuva piirretään suoraan EPS-tiedostoksi. R-komentojonossa kuvat tehdään Survolle sopivaan muotoon komennoilla survo.eps("kuva.eps") # piirtokomennot dev.off() Funktio hist.with.normal() piirtää valitun muuttujan histogramman ja siihen sovitetun normaalijakauman tiheysfunktion. Tämä funktio on (toistaiseksi) mukana eräiden mallisovellusten vuoksi. R-ohjelmisto edellyttää, että alustustiedosto SURVO.R nimetään ympäristömuuttujana R_PROFILE. Tämä tapahtuu itse sukrolla /SR SURVO MM -versiossa 2.25 ja sitä tuoreemmissa. Vanhemmissa SURVO MM:n versioissa R_PROFILE tulee asettaa ennen Survon käynnistystä komentotulkin ikkunassa komennolla SET R_PROFILE=C:\PROGRA~1\SURVO\U\SYS\SURVO.R ja välittömästi tämän jälkeen Survo pitää käynnistää komennolla C:\PROGRA~1\SURVO\u\S.EXE jotta R_PROFILE-asetus pysyy voimassa. Huom. SURVO MM -versioissa 2.25+ /SR asettaa R_PROFILE:n automaattisesti uudella PUTENV-komennolla. Toimituskentässä SR.EDT, joka löytyy näiltä sivuilta (tilapäisesti) osoitteesta http://www.survo.fi/tmp/SR.EDT on listattuna sukrot /SDAT ja /SR, jotka tulee tallettaa. Ennen talletusta sukrossa /SR oleva R-ohjelmistopolku >C:\Progra~1\R\rw2001\bin\ on muutettava oman koneen R-ohjelmiston sijaintia vastaavaksi. Kentässä on myös pari esimerkkiä, joilla pääsee testaamaan yllä kuvattuja toimintoja. Survon ja R:n yhteistoimintaa on tarkoitus kehittää edelleen käyttäjien toivomusten mukaan. Antakaa siis palautetta. Kannattaa varautua siihen, että tässä esitettyyn työskentelytapaan saattaa tulla vielä olennaisesia muutoksia. - 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!