R …….

Het automatiseren van statistiekberekeningen is waarschijnlijk een van de vroegste computertoepassingen. In de jaren 60-70 zijn er al bibliotheken van ponskaarten om statistiekberekeningen te maken met een taal als Fortran.

Later zijn er specifieke talen en pakketten ontwikkeld voor het statistiek domein. Denk aan SPSS, R en SAS. R is open source programmeertaal die zich sterk richt op het bewerken, verwerken en analyseren van (statistiek) data. Binnen R zijn veel bibliotheken beschikbaar.

Kenmerk van R is dat het een interactieve omgeving is die gericht is op de ‘eindgebruiker’ en deze gebruiker zomin mogelijk te belasten met typische programmeer zaken. R is ontstaan als een open source nakomeling van de commerciële programmeer taal S. Om het gebruik van R makkelijker te maken, is RStudio ontwikkeld. RStudio is de IDE van R.

Binnen R spelen vector, list en data frame een hoofdrol. Een vector is een ‘lijst’ van gelijksoortige objecttypen (character, number, boolean, integer, complex),  een list is een ‘vector’ die kan bestaan uit verschillende objecttypen en een data frame is een datastructuur van rijen en kolommen waarbij elke rij een ‘waarneming’ is en de kolommen een variabele voorstellen.

De kracht van R is dat er voor het manipuleren van de objecten een groot aantal bibliotheken is die het leven in R makkelijk maken. Een voorbeeld is R/igraph. Igraph is een bibliotheek van functies om netwerk analyses te doen. Voor het presenteren van netwerken heeft igraph veel functies. Een voorbeeld daarvan is het presenteren van een netwerk op basis van simpele ‘literals’ die een volgorde van knooppunten en relaties voorstellen. Met eenvoudige symbolen wordt de relatie tussen knooppunt A en knooppunt B vastgelegd.  A  -+  B betekent dat vanuit A er een relatie is naar B. Oftewel A => B. de weg terug is +- oftewel <=. Wil je geen richting aangeven, dan gebruik je gewoon het liggend streepje:  —


Een netwerk bestaande uit A=>B =>C =>D en A=>F=>C=>D en  A=>F=>G=>D, zie figuur hierboven, wordt door de igraph functie:

graph_from_literal(A -+ B -+ C -+ D,A -+ F -+ C -+ D, A -+ F -+ G -+ D)

Om deze ‘graaf’ te plotten kun je plot() (standaard R) of tkplot() (onderdeel van igraph) gebruiken. Met tkplot() kun je interactief het netwerk bewerken. Een aardige toepassing is om klikpaden van een website visueel te presenteren. Veel webstatistieken presenteren klikpaden op een CSV-achtige manier waarbij de opeenvolgende pagina’s gescheiden worden door komma’s. Hieronder is een voorbeeld van Comscore.


Met wat bewerkingen kan dit omgezet worden naar een voor de igraph functie: graph_from_literal() leesbaar geheel.


Deze gegevens kunnen in graph_from_literal() worden ingevoerd.


Daarna kan de ‘graaf’ met tkplot() geplot worden en interactief worden bewerkt door de knooppunten te positioneren, kleuren van de lijnen aan te passen, etcetera.


Op een eenvoudige manier kun je met RStudio snel een netwerk visualiseren.