R

C’t Magazine - - Inhoud -

De taal R richt zich op we­ten­schap­pers en da­ta­ana­lis­ten. Je kunt er al­les mee be­re­ke­nen wat je als sta­tis­ti­cus maar wilt, van me­di­aan tot be­trouw­baar­heids­in­ter­val, en de da­ta pre­sen­te­ren in over­zich­te­lij­ke gra­fie­ken.

niet­com­mer­ci­eel ge­bruik. In­te­gra­tie met de Ana­con­da­IDE voor da­ta­ana­ly­se en het po­pu­lai­re on­li­ne no­ti­tie­boek­je Ju­py­ter heb­ben er ook aan bij­ge­dra­gen dat R aan­trek­ke­lijk is ge­wor­den voor een bre­der pu­bliek.

R is me­de po­pu­lair van­we­ge de vi­su­a­li­sa­tie­mo­ge­lijk­he­den. Met bij­voor­beeld pie(), hist() of plot() kun­nen gang­ba­re dia­gram­ty­pen in een hand­om­draai wor­den sa­men­ge­steld en ge­ëx­por­teerd. We ra­den de ex­tra bi­bli­o­theek gg­plot2 aan, die ge­ge­vens dui­de­lijk mooi­er weer­geeft dan het stan­daard­pak­ket. Met ver­de­re pak­ket­ten mo­del­leert en vi­su­a­li­seert R ook ge­o­da­ta voor ruim­te­lij­ke sta­tis­tiek (Spa­ti­al Ana­ly­tics).

Als pro­gram­meer­taal is R re­la­tief be­grij­pe­lijk en kun je vrij ver ko­men zon­der dat je de ba­sis­prin­ci­pes hoeft te snap­pen. Maar R heeft ei­gen­lijk al­les wat je van een mo­der­ne taal ver­wacht. Het is ob­ject­ge­o­ri­ën­teerd en zelfs va­ri­a­be­len, func­ties en ope­ra­to­ren zijn ob­jec­ten. Met loops en ge­brui­kers­in­voer kun je te­rug­ke­ren­de ge­ge­vens­ana­ly­ses ver­een­vou­di­gen en func­ties en klas­sen bou­wen voor je ei­gen mo­del­len.

Het po­pu­lai­re pak­ket shi­ny maakt van R een ser­ver­si­de­pro­gram­meer­taal, die door de be­schik­ba­re Covid­19­da­ta aan po­pu­la­ri­teit heeft ge­won­nen en tal van on­li­ne dash­boards op­le­ve­re. Er zijn ook tal van an­de­re ex­ten­sies, bij­voor­beeld op het ge­bied van ma­chi­ne­learning, ge­noom­da­ta en tekst­ana­ly­se.

VOOR WIE?

R is de juis­te keu­ze voor we­ten­schap­pers en da­ta­ana­lis­ten die wei­nig er­va­ring heb­ben met pro­gram­meer­ta­len, maar die in hun vak­ge­bied te­gen gren­zen aan­lo­pen met SPSS, Ex­cel en soort­ge­lij­ke pro­gram­ma’s. Je kunt zelfs com­plexe ana­ly­ses uit­voe­ren in slechts en­ke­le stap­pen, dia­gram­men ma­ken en je ei­gen mo­del­len be­schrij­ven. Een ty­pi­sche toe­pas­sing is het be­re­ke­nen en vi­su­a­li­se­ren van ge­ge­vens voor een on­der­zoeks­pro­ject. R is nau­we­lijks ge­schikt voor ‘klas­siek’ pro­gram­me­ren.

R heeft be­per­kin­gen bij het ver­wer­ken van ge­ge­vens op in­ter­net, ex­treem gro­te da­ta­sets en re­al­ti­me da­ta – dan heeft Py­thon vaak de voor­keur. Py­thon is ook po­pu­lair­der dan R voor AI en ma­chi­ne­learning. Vaak kun­nen bei­de ta­len ech­ter heel uit­ste­kend ge­com­bi­neerd wor­den, bij­voor­beeld door ge­ge­vens van web­pa­gi­na’s sa­men te voe­gen met Py­thon en ze ver­vol­gens te ana­ly­se­ren met R. id <- c(1:10) pa­gi­nas <- c(2,1,1,1.66,1,0.5,2,2,1,0.75) woor­den <- c(1367,607,706,852,513,334,1417,1196,659,407) ct_df <- da­ta.fra­me(id,pa­gi­nas,woor­den)

# Vec­to­ren in da­ta-fra­mes zijn als ta­bel­ko­lom­men te ge­brui­ken

quan­ti­le(ct_df$woor­den)[2]

# Voor in­for­ma­ti­ci ver­war­rend: R telt van­af 1, niet van­af 0

sum­ma­ry(ct_df$woor­den)

# Sum­ma­ry be­vat ken­tal­len van de de­scrip­tie­ve sta­tis­tiek

cor­re­la­ti­on <- cor(ct_df$pa­gi­nas,ct_df$woor­den) re­gres­si­on <- lm(ct_df$pa­gi­nas~ct_df$woor­den) # Cor­re­la­tie­co­ëf­fi­cient en li­ne­a­re re­gres­sie be­re­ke­nen

plot(ct_df$woor­den, ct_df$pa­gi­nas, xlab="Aan­tal woor­den", ylab="Aan­tal pa­gi­nas", main="ct-ar­ti­kel", sub=pas­te("Pe­ar­son's r = ", round(cor­re­la­ti­on,2))) ab­li­ne(re­gres­si­on, col="blue")

# Het dia­gram laat de va­ri­a­be­len zien

Newspapers in Dutch

Newspapers from Netherlands

© PressReader. All rights reserved.