R-ohjelmointi.org

Tilastotieteellistä ohjelmointia R-kielellä

Alteryx ja R

Alteryx on muun muassa aineiston esikäsittelyyn, yhdistelyyn ja analysointiin soveltuva ohjemisto. Saman tyyppiä ohjelmistoja ovat mm. Knime ja RapidMiner, Taverna. Lisäksi myös esim. SPSS Modeller ja SAS Enterprise Miner tarjoavat työvuohon perustuvan työskentelytavan.

Kirjoitin Alteryx:stä jo aiemmin, mutta ilmaisversio on sittemmin poistunut jakelusta, ja nykyisin tarjolla on vain ilmainen testiversio Alteryx Designer:sta. Olen viime aikoina käyttänyt hieman Knimeä ja RapidMineriä, joten ajattelin samalla vilkaista miten Alteryx on kehittynyt erityisesti R-integraation osalta.

Alteryxin asentaminen

Ohjelman testiversion voi ladata yrityksen kotisivulta. Lataamisen jälkeen testiversion asentaminen onnistuu helposti, mutta R-toiminnallisuuden käyttöönotto vaatii vielä Predictive Tools-laajennuksen asentamista. Laajennus löytyy Alteryx:in lataussivustolta.

Alteryx:in Predictive Tools -laajennuksessa ei tule mukana kaikkia mahdollisia R-paketteja, mutta puuttuvat voi asentaa itse. Alteryx:in käyttämä R-versio löytyy polusta C:\Program Files\Alteryx\R-X.Y.Z, jossa X.Y.Z on asennetun R-version versionumero. Polusta löytyvää R:ää voi käyttää kuten tavanomaista R:ääkin (aja R.exe tai Rgui.exe), ja puuttuvien pakettien asentaminen hoituu sitten R:ssä normaalimenettelyllä. Asennuksen jälkeen paketit ovat sitten myös Alteryx:in kautta käytettävissä.

R:n käyttö Alteryx:stä

Alteryx:ssä ”R-kikkula” (mikä ihme niiden rakennuspalikoiden nimi on?) löytyy Developer-työkalunauhasta. Jos kyseistä työkalunauhaa ei löydy, voit lisätä sen näkyville klikkaamalla työkalunauhan oikeasta laidasta löytyy plus (+) -merkkiä.

Kun R-kikkulan raahaa workflow-ikkunaan, voi siihen kirjoittaa R-koodia vasemman puolen ikkunaan:

Alteryx2

Ikkunassa näkyy itseasiassa jo kokonainen työvuo, joka lataa Tilastokeskuksen Paavo-aineiston ja muokkaa sen pitkästä leveään muotoon. Ensimmäinen R-kikkula lataa tarvittavan pxR-paketin, hakee Paavo 2016-aineiston Tilastokeskuksen sivulta ja syöttää sen Alteryx:lle näkyväksi.

R-koodi on seuraava:

require(pxR)
paavo16<-as.data.frame(read.px("http://pxnet2.stat.fi/PXWeb/Resources/PX/Databases/Postinumeroalueittainen_avoin_tieto/2016/paavo_9_koko_2016.px", encoding="windows-1252"))
 
# Kirjoittaa datan Alteryx:in R-kikkulan tulostenamiskaan numero 1.
write.Alteryx(paavo16, 1)

Seuraava R-kikkula muokkaa datan leveään muotoon rashape2-paketin funktioita käyttäen. Vastaava R-koodi on:

# Lukee aineiston nimelle paavo16 R:n dataframeksi
paavo16<-read.Alteryx("#1", mode="data.frame")
 
# Muotoilee aineistoa
require(reshape2)
p<-dcast(paavo16, Postinumeroalue~Tiedot, mean)
 
# Kirjoittaa datan Alteryx:in R-kikkulan tulostenamiskaan numero 1.
write.Alteryx(p, 1)

Työvuon päässä olevat kiikarit (browse-kikkulat) antavat tarkastella tulostiedostoja.

Kokemuksia

Alteryx:in kautta R:n käyttö on melkoisen helppoa, koska se vaatii varsin vähän ylimääräistä koodia varsinaisen leipäkoodin ympärille. Vain yksi rivi data siirtämiseen R:ään, ja toinen sen palauttamiseen Alteryx:iin. Haittapuolena on, että Alteryx osaa siirrellä vain datakehikkoja (data frame), eikä esimerkiksi listojen siirtäminen ohjelmien välillä onnistu.

Sivumennen sanoen, tämä vastaa kyllä jokseenkin myös esimerkiksi Knimen ja RapidMinerin tapoja hoitaa samantyyppistä keskustelua ohjelmien välillä.

2 Responses to “Alteryx ja R”

  • AltrX sanoo:

    Hei,

    listojen tuonnin pitäisi onnistua Alteryx:in versiolla 10.5:

    read.Alteryx(”#1″, mode=”list”)

    Myös grafiikoiden kirjoitus onnistuu:

    AlteryxGraph(1, width=576, height=576)
    pie(c(0.12, 0.3, 0.26), col = c(”purple”,”violetred1″,”green3″))
    invisible(dev.off())

    • Jarno sanoo:

      Tuohan on hyvä uutinen! Pitääpä tutustua, kunhan ennätän.


Category