R on tilastolliseen laskentaan suunniteltu ohjelmointikieli. R in a Nutshell puolestaan on R-kirja, jonka kahlasin läpi kuluneen viiden viikon aikana.

Käyn läpi kirjan tarjoamat opit R-ohjelmointiin ja jaan kokemuksiani oppismismenetelmistä R:ää varten.

Kirjailija: Joseph Adler

R in a nutshell-kirjan hankkiminen

Kirjan saa hankittua esimerkiksi Amazonista täältä .

R in a Nutshell-kirjan sisältö

Kirjasa keskityttiin enemmän esimerkkeihin kuin algoritmien teoriaan. Ainakin itselleni tyyli toimii hyvin, koska usein teoriassa mennään niin syvälle, että sitä on hankala ymmärtää. Toisaalta algoritmeja olisi voinut kuvailla yleisellä tasolla tarkemmin ja jättää turhaa sälää pois.

Kirja on jaettu kuuteen osioon.

1 R perusteet

Tässä osiossa lähdetään liikkelle ihan kielen ja editorin asentamisesta, joten kirja sopii mainiosti myös vasta-alkajalle.

2 R-kieli

Mielestäni kirjan toisessa osiossa keskitytään oppimisen kannalta epäolennaisiin asioihin, kuten R-kääntäjän tekniseen toteutukseen. Jos luet kirjaa, silmäile osio nopeasti läpi.

3 Datan työstäminen

Kappaleessa 11 palataan jälleen ladulle. Osio luo hyvän pohjan tyypilliseen datan muokkamiseen R:llä.

4 Datan visualisointi

Erittäin hyödyllinen pätkä hyvien esimerkkien kera. Opin paljon uutta R-kuvaajien luomisesta. Erityisesti 3D-graafikat ja karttavisualisoinnit olivat tyylikkäitä ja melko yksinkertaisia, kun perustaidot oli hanskassa.

5 R ja tilastollinen laskenta

Jos tilastomatematiikka ei ole se kaikkein tutuin aihe, ei kannata huolestua, mikäli joka ikinen yksityiskohta ei aukea. Tilastollisen ohjelmoinnin ydin käydään perusteellisesti läpi, esimerkiksi korrelaatio, todennäköisyysjakaumat, tilastolliset testit ja lineaariset mallit. Loppupäässä päästään edistyneempiin menetelmiin luokittelun, koneoppimisen ja aikasarjojen parissa.

6 Muita aiheita

Sekalaisia aiheita: R-koodin optimointi, bioinformatiikka ja Hadoop.

R-kielen opiskelu

Kirjaa lukiessani tein itselleni julkisen GitHub-kansion *, jonne aloin tekemään pienissä palasissa yleiskäyttöisiä koodiesimerkkejä kirjan pohjalta. Tarkoituksena on, että kun tarvitsen vastaavaa koodia myöhemmin, se on helposti ymmärrettävässä muodossa valmiiksi saatavilla. Suosittelen erittäin lämpimästi kyseistä oppimismenetelmää.

Aikaisemmin olen opetellut R:ää tämän LinkedIn Learning-palvelusta löytyvän kuusituntisen videokurssin avulla. Videokurssi oli todella laadukas, mutta syystä tai toisesta en tainnut käydä viimeisiä oppitunteja loppuun.

Parhaat oppimismenetelmät löydät kuitenkin itse alkamalla tekemään ja kokeilemaan eri materiaaleja ja tapoja.

*Git on tekstipohjaisille tiedostoille suunniteltu versionhallintajärjestelmä. GitHub puolestaan on pilvipalvelu, jonne voi luoda koodausprojekteille kansioita (repository) vähän samaan tapaan kuin Google Driveen tai OneDriveen.

Taustaa R-osaamisestani

Tartuin R in a nutshell kirjaan parin eri vaiheen kautta. Ensiksi päädyin hankkimaan netistä tusinan verran data science aiheisia kirjoja edullisesta tarjouksesta. Ja sen jälkeen päädyin työtehtävissäni ratkomaan erästä ongelmaa R:llä, joten R-aiheista kirjasta aloittaminen oli loogista.

Aikaisemmat kokemukseni R-ohjelmoinnista perustuvat kokeiluihin esimerkiksi vedonlyönnin parissa ja diplomityöni datan analysoinnista.