[viesti Survo-keskustelupalstalla (2001-2013)]
Kirjoittaja: | Petri Palmu |
---|---|
Sähköposti: | - |
Päiväys: | 19.10.2006 13:40 |
Pientä vaivaa aiheuttaa se, että mm. R:ssä ei ole kunnollista tapaa muuttujien lyhyille käyttönimille ja pidemmille selityksille. Näinpä R:ssä muuttujien nimet saattavat venyä (mm. useiden peräkkäisten muuttujamuunnosten seurauksena) yli 8 merkkiä pitkiksi, mikä taas voi aiheuttaa ongelmia FILE SAVE:ssa (duplikaatit). Koetin hahmotella sukroa, joka siirtäisi txt-tiedostoon talletetut sarakenimet Survon datatiedostoon (FILE STATUS). Sarakenimet voivat olla tiedostossa joko riveillä tai "sarakkeilla". Yhtä hyvin nimet voivat siis olla excelistä peräisin olevasta tekstitiedostosta, jolloin vain poimitaan ensimmäinen Tuota sarakesuuntaa en vielä saanut aikaan (kun vaatii transponointia). Jäin miettiä, että voisiko sukron hyödyntämään MOVE-toimintoon lisätä transponointi-mahdollisuus (se olisi siistimpti kuin kikkailla TRANSP -toiminnon kanssa toimituskentässä)? Voisi myös ajatella toisen sukron tekemistä, jolla saisi kenttien selitykset esim. LINREG-, MINSTAT-tulosteisiin. Sukron listaus: *TUTSAVE NAM2DAT / / / NAM2DAT N,D copies (longer field) names in the text file N as the / variable descriptions in the Survo data file D / with TRANSP=0 (default) names are assumed to be stacked as rows / (e.g. colnames from R data frame: writeLines(names(data), 'names') / -> no transpose needed for FILE STATUS / with TRANSP=1 names are as columns (e.g. Excel view) / -> transpose needed for FILE STATUS *{init}{tempo -1}{ins line}{ins line}{line start} *{save spec TRANSP W6} *FILE STATUS {print W2}{act}{save spec N W3} *{u}{line start}{ref set 1}FIND "FIELDS:"{act}{R} *{save cursor W4,W5}{W4=W4+1}{ref jump 1}{erase} / - if W6 '=' {} then goto A - if W6 = 1 then goto B + A: *MOVE 1,{print W3},1,30 FROM {print W1} TO {print W4},40{act}{del line} *{goto C} + B: *MOVE 1,1,1,300 FROM {print W1} TO {print W4},40{act}{del line} + C: *{line start}{r5}UPDATE{act} *{end} * ...................... Leikkiesimerkki PAINO muuttujasta, jolle on tehty useita muunnoksia SAVEP CUR+1,CUR+3,coln ID PITUUS dlog_ma4_MdPAINO (esim. Excelin otsikko rivi) SAVEP CUR+1,CUR+1,coln2 ID PITUUS dlog_ma4_MdPAINO DATA _K X1 X2 X3 1 60 170 2 70 160 3 65 180 FILE COPY _K TO NEW K FILE SHOW K SHOW coln2 .................... /NAM2DAT coln,K / FILE UPDATE K Copy of data matrix _K FIELDS: (active) 1 NA_ 1 X1 (##) ID 2 NA_ 1 X2 (##) PITUUS 3 NA_ 2 X3 (###) dlog_ma4_MdPAINO END Survo data file K: record=25 bytes, M1=7 L=64 M=3 N=3 FILE COPY _K TO NEW K2 Vaati kääntämisen... .................... /NAM2DAT coln2,K2 / TRANSP=1 FILE UPDATE K2 Copy of data matrix _K FIELDS: (active) 1 NA_ 1 X1 (##) ID PITUUS dlog_ma4_MdPAINO 2 NA_ 1 X2 (##) 3 NA_ 2 X3 (###) END Survo data file K2: record=25 bytes, M1=7 L=64 M=3 N=3 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!