R-ohjelmointi.org

Tilastotieteellistä ohjelmointia R-kielellä

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

Numero- ja merkkijonojen järjestäminen

Suomessa merkkijonojen aakkostaminen noudattaa kansallista standardia, jossa kaikki numerot aakkostetaan ennen kirjaimia, kirjaimet aakkostetaan koulusta tutulla tavalla a-ö, isot ja pienet kirjaimet ovat samanarvoisia ja välimerkit sekä tarkemerkit (kuten aksentti) jätetään huomiotta. Jälkimmäiseen sääntöön on tosin erikseen mainittuja poikkeuksia. Useammista sanoista koostuvat merkkijonot voidaan aakkostaa sanoittaisesti, jolloin sananväli tulee ennen kaikki muita merkkejä, tai kirjaimittaisesti, [...]

Posted in R-ohjelmointi | No Comments

Heitä sikaa!

Heitä sikaa on se possunmuotoisten noppien heittelypeli, jota ainakin minä pelasin jo lapsena. Olen aina aiemmin ajatellut, että koko homma on ihan tuuripeliä, mutta kun tässä päivänä muutamana makasin sairaana kotisohvalla, niin aloin pohtia asiaa tarkemmin. Pakkohan näille possuillekin on voida esimerkiksi laskea yhden heiton keskimääräisen pistemäärän odotusarvo. Sitä varten tarvittaisiin vain tietoa eri yhdistelmien [...]

Posted in R-ohjelmointi, Yleistä | No Comments

Salasanageneraattori

Väkersin R:ään pienen salasanageneraattorin. Tavoitteena on muodostaa helposti muistettavia salasanoja. Salasanan voi kirjoittaa vaikka lapulle muistiin, jos jättää siitä esimerkiksi palvelun tunnisteen ja vakiomerkkijonon kirjoittamatta. Nämä on yleensä melko helppo muistaa muutenkin. Näitä generaattoreitahan on toki muutenkin verkko pullollaan, mutta tässä on erikoispiirteenä se, että taustalla olevaa sanalistaa voi tarvittaessa vaihtaa. Alla olevassa esimerkissä käytetään [...]

Posted in R-ohjelmointi, Skriptit | No Comments

Viimaindeksi ja Ilmatieteenlaitoksen avoin data

Viimaindeksi pyrkii kuvaamaan sitä, miten lämpötila ja tuulennopeus vaikuttavat ihmisen aistimaan kylmyyteen. Selkeän paleltumisvaaran rajana voidaan pitää indeksin, siis aistitun kylmyyden arvoa -35 Celsius-astetta. Ilmatieteen laitoksen sivulta löytyy interaktiivinen visualisointi viimaindeksistä, mutta omaan järkeeni istuu paremmin kaavio, jossa lämpötila on pystyakselilla, ja tuulen nopeus vaaka-akselilla. Tällainen kaavio voidaan laatia R:ssä helposti: # Viimaindeksi laskettuna arvoille [...]

Posted in Grafiikka | No Comments

Veden tiheyden laskeminen

Viime viikolla tuli tarve laskea sadoille tai tuhansille havainnoille veden tiheyden arvio käyttäen mitattua veden syvyyttä, lämpötilaa ja suolaisuutta. Löysin helposti Googlella useitakin ohjelmia, jotka kyllä laskevat tiheyden kiltisti yhdelle havainnolle kerrallaan, mutta tuhansien kanssa tulisi niitä käyttäen ongelmia. Olisin voinut tehdä laskurin itse vaikka Exceliin, jos olisin jaksanut etsiä sopivat yhtälöt laskutoimituksia varten, mutta [...]

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