[viesti Survo-keskustelupalstalla (2001-2013)]
| Kirjoittaja: | Petri Palmu |
|---|---|
| Sähköposti: | petri.palmu'at'helsinki.fi |
| Päiväys: | 10.9.2005 0:11 |
Moi,
Näyttää siltä, että R:ää välikätenä hyödyntäen Excel-formaatissa
olevat tiedostot voidaan (tauluittain) siirtää ensin R-objektiksi
ja sitä kautta Survon .svo tiedostoksi. Tähän tarvitaan R:n
paketti "RODBC".
Pieni esimerkki:
Olkoon alla olevan tyyppinen (pätkä tämän vuoden
100 m maailmantilastosta) tallettu Excel-tiedostona
"100m.xls" :
Mark Wind Athlete Nat Venue Date
9.77 1.6 Asafa Powell JAM Athína (Olympic Stadium) 14.6.2005
9.88 0.4 Justin Gatlin USA Helsinki 7.8.2005
9.94 1 Leonard Scott USA London (CP) 22.7.2005
9.96 1 Marc Burns TRI Port-of-Spain 25.6.2005
Luodaan R-koodi, jolla otetaan yhteys ko. excel-fileen ja
tuodaan se R:n workspaceen
SAVEP CUR+1,CUR+12,XLS.r
library(RODBC)
# Luodaan yhteys Excel-tiedostoon
channel <- odbcConnectExcel("100m.xls")
print(" Tässä Excel-tiedoston sisältöä ")
sqlTables(channel)
# Luetaan Excelin "Taul1" R-objektiksi
sh1 <- sqlFetch(channel, "Taul1")
# Talletetaan tab-delimited muotoon ks. args(write.table)
write.table(sh1,"100meters.txt", sep="\t",quote=FALSE,row.names=FALSE)
print(" "); print(" Aineisto R-objektina")
print(sh1)
...............
R-skriptin ajo ...
/SR XLS.r
..ja tulostus:
[1] " Tässä Excel-tiedoston sisältöä "
TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS
1 C:\\SURVO\\R\\DBMS\\100m <NA> Taul1$ SYSTEM TABLE
2 C:\\SURVO\\R\\DBMS\\100m <NA> Taul2$ SYSTEM TABLE
3 C:\\SURVO\\R\\DBMS\\100m <NA> Taul3$ SYSTEM TABLE
[1] " "
[1] " Aineisto R-objektina"
Mark Wind Athlete Nat Venue Date
1 9.77 1.6 Asafa Powell JAM AthÝna (Olympic Stadium) 2005-06-14
2 9.88 0.4 Justin Gatlin USA Helsinki 2005-08-07
3 9.94 1.0 Leonard Scott USA London (CP) 2005-07-22
4 9.96 1.0 Marc Burns TRI Port-of-Spain 2005-06-25
Warning message:
closing unused RODBC handle 1
....................
Lopuksi siirretään .txt-tiedosto Survo-dataksi
FILE SAVE 100meters.txt TO NEW WL100
DELIMITER=TAB
..................
FILE LOAD WL100,CUR+1
DATA WL100*
Mark Wind Athlete Nat Venue Date
9.77 1.6 Asafa Powell JAM AthÝna (Olympic Stadium) 2005-06-14
9.88 0.4 Justin Gatlin USA Helsinki 2005-08-07
9.94 1.0 Leonard Scott USA London (CP) 2005-07-22
9.96 1.0 Marc Burns TRI Port-of-Spain 2005-06-25
Sukrona homma menisi aika näppärästi, eikä tarvitsi pahemmin
kajota Exceliin (tallettaa sarkainerotettuna tms. txt-tiedostona).
Olisi kiva kuulla mahd. näkemyksiä siitä, miten
R:n avulla voisi rakentaa relaatiotietokantoja (sql:n avulla),
suorittaa kyselyjä ja tehdä analyyseja (esim. Access)
tietokannoista.
t.Petri
| 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!