R-ohjelmointi.org

Tilastotieteellistä ohjelmointia R-kielellä

Yksinkertaista tekstinlouhintaa

Olen tainnut useammankin kerran kirjoittaa R:n tarjoamista mahdollisuuksista harrastaa ruudunkaavintaa (screen scraping). R:ssä on myös varsin hyvät ominaisuudet esimerkiksi tekstinlouhintaa ajatellen, esimerkiksi paketit tm ja qdap. Ruudunkaavinnalla hankitun tekstuaalisen aineiston analyysissä tekstinlouhintatyökalut ovat varsin keskeisiä. Harmillisesti toiminnallisuus keskittyy etupäässä englanninkielisen tekstin käsittelyyn, ja suomenkielistä tekstiä varten soveltuvia analyysiä tukevia aineistoja, esimerkiksi sanalistoja, ei ole kovin [...]

Posted in Grafiikka, R-ohjelmointi, Skriptit | No Comments

Matka.fi – API vai ruudunkaavinta?

Matka.fi on Liikenneviraston tarjoama, yhteistyönä ylläpidetty palvelu, joka sisältää koko maan kattavia aikataulutietoja. Sinällään se on verrattavissa ehkä tunnetumpaan reittiopas.fi -palveluun, ja esimerkiksi API:n käyttäjäksi rekisteröityminen toimii samalla tavoin. Valitettavasti API ei vain toimi. Rekisteröityminen kyllä tuntuisi onnistuvan, mutta siihen homma sitten tyssääkin. Vaikka kuinka yrittäisi autentikoitua ohjeiden mukaisesti ja käyttää API:a tietojen hakemiseen, ei [...]

Posted in R-ohjelmointi | No Comments

Kannattaako sateessa juosta?

Vettä on taas tullut viime päivinä melko riittoisasti. Ravintolasta lähtiessämme pohdimme, kannattaako sateessa ennemmin kävellä vai juosta. Muistelin, että viimeisimmät populäärijutut kertoivat juoksemisen kannattavan. Mutta miten lujaa sitten pitäisi juosta? Tutkitaanpa asiaa lyhyesti. DeCarian kirjoittama juttu auttaa alkuun. Jutussa on oletettu, että ihminen on ruumiinrakenteeltaan suunnilleen Paavo Pesusienen muotoinen. Toisissa malleissa, jotka löysin, on ihmisten [...]

Posted in R-ohjelmointi, Yleistä | No Comments

CSV-sormenjälki, R-versio

Luin tänään uudesta, ihan näppärän oloisesta palvelusta, CSV Fingerprints. SIinä on ajatuksena tarkistaa tekstitiedoston (datamatriisi) sisältö siltä varalta, että siinä on esimerkiksi puuttuvia arvoja, tyhjiä soluja tai samoissa sarakkeissa sekaisin eri tietomuotoja. Ensimmäisenä tuli myös mieleeni, että sitä voisi käyttää taulukon muutosten jäljittämiseen esimerkiksi datan puhdistamisen aikana. Muistan nähneeni vastaavankaltaisen sovelluksen, mahdollisesti raster-paketilla toteutettuna, mutta [...]

Posted in Grafiikka, R-ohjelmointi | No Comments

Ordinaalinen ja multinomiaalinen regressio

Jos vastemuuttuja on kaksiluokkainen (esim. naaras/koiras), käytetään aineiston analysointiin tyypillisesti logistista regressiota. Ordinaalinen logistinen regressio on logistisen regression laajennus siinä mielessä että se on menetelmä, jota voidaan käyttää, kun vastemuuttuja on moniluokkainen ja lisäksi järjestysasteikollinen (esim. vähän/kohtalaisesti/paljon). Keskeinen oletus on “proportional odds” tai “rinnakkaisten regressioiden oletus” eli oletetaan että vastemuuttujan tasojen muutos vaikuttaa samalla tavalla [...]

Posted in R-ohjelmointi | No Comments

Geneettinen epidemiologia – OR vastaan ennustearvo

Geneettinen epidemiologia kattaa suuren joukon erilaisia tutkimusasetelmia, joiden tarkoituksena on löytää tiettyyn tautitilaan liittyviä geneettisiä piirteitä. Eräs tyypillinen asetelma on tapaus-verrokkitutkimus, jossa tutkitaan yhden emäksen muutoksia genomissa. Varsin tyypillisesti tieteellisissä julkaisuissa esitetään tällaisissa tapauksissa geneettisen ominaisuuden odds ratio (vetokerroin), muttei välttämättä sitä, miten paljon lisäarvoa ominaisuus tuo jo tunnettujen taudin riskitekijöiden lisäksi. Lisäarvo olisi kuitenkin [...]

Posted in R-ohjelmointi | No Comments

Suurten tekstitiedostojen käsittely sqldf-paketilla

Suurten (taulukkomuotoisten) tekstitiedostojen käsittely R:ssä käy näppärimmin, jos tiedoston saa kokonaisuudessaan ladattua muistiin. Aina tämä ei kuitenkaan ole mahdollista, mutta jos levytilaa on kuitenkin tarpeeksi, voi tiedostosta tehdä esimerkiksi SQLite-tietokannan, ja tehdä hakuja siitä. SQLite on siitä näppärä tietokantamoottori, ettei se vaadi erillistä asennusta, vaan sen saa helposti asentamalla RSQLIte-paketin. Paketilla sqldf voi puolestaan tehdä [...]

Posted in Note to self, R-ohjelmointi | No Comments

Vilttikaavio

Tieteellinen aikakauslehti PLOS ONE julkaisu alkuvuodesta artikkelin, jossa kuvataan uusi R-funktio, joka piirtää lämpökarttakuvioita, mutta jättää niistä pois usein käytetyt puukaaviot. Tätä ovat muutkin ihmetelleet. Tuntuu nimittäin erikoiselta, että tuollainen artikkeli julkaistaan tieteellisessä lehdessä. Artikkelin tieteelliset ansiot nimittäin tuntuvat aavistuksen heppoisilta. Toinen hieman samankaltainen artikkeli julkaistiin samaten tänä vuonna Nature Methods-lehdessä. Siinä kuvataan palvelu, jolla [...]

Posted in Aiheeton, Valitus | No Comments

Tilastolliset mallit R:ssä

Johdanto R:ään on toteutettu varsin ilmaisuvoimainen tilastollisten mallien määrittelytapa. R:n manuaali “An Introduction to R” kattaa suuren osan erilaisista määrittelyistä. Alkuperäinen idea lienee kotoisin Wilkinsonin ja Rogersin artikkelista. Seuraavassa käydään läpi muutamia erilaisia mallivaihtoehtoja eräälle esimerkkiaineistolle. Esimerkkiaineiston löytää tämän postauksen lopusta R-koodimuodossa. Kaavojen perusteet R:n kaavoissa on kolme keskeistä osaa, niin sanottu vasen puoli (vastemuuttuja(t)), [...]

Posted in Note to self, R-ohjelmointi | No Comments

Tuleva bioinformatiikan kirja: “RNA-seq Data Analysis: A Practical Approach”

RNA-seq Data Analysis: A Practical Approach -kirjamme ilmestyy todennäköisesti tämän vuoden elokuussa. Kirjan tavoitteena on antaa käytännöllisiä ohjeita RNA-seq -aineistojen analysointiin. Kirjan tekijät ovat Eija Korpelainen (CSC), Panu Somervuo (HY), Mikael Huss (SciLifeLab) ja Garry Wong (UEF) sekä allekirjoittanut. Lisätietoja kirjasta löytyy CRC Pressin sivuilta. Kirjan lopullinen hinta asettunee noin 40-50 punnan välille.

Posted in Yleistä | No Comments