[ Home | Vorige | Volgende ]

De meeste data die je gaat gebruiken in R zit in tabellen. In R heten die “data frames”. Je kunt een spreadsheet in Excel saven als “tab-separated file” of “comma-separated file”, een Table object in Praat saven als “tab-separated file”, of een file zelf intikken in een tekst-editor zoals NotePad of TextWrangler. Zo’n tabel kun vervolgens inladen in RStudio via Environment → Import Dataset → From Text File, waarbij je erop let dat de eerste rij als kolomnamen beschouwd wordt.

Een tabel kun je ook rechtstreeks maken in R, bijvoorbeeld van een of meer vectoren:

proefpersoon = c("CW", "AB", "PB", "SJ", "SH", "WP", "VR", "AR", "TW", "DW")
geslacht = c("V", "V", "M", "V", "V", "V", "V", "V", "M", "M")
tabel = data.frame (proefpersoon, geslacht)
tabel
##    proefpersoon geslacht
## 1            CW        V
## 2            AB        V
## 3            PB        M
## 4            SJ        V
## 5            SH        V
## 6            WP        V
## 7            VR        V
## 8            AR        V
## 9            TW        M
## 10           DW        M

Je ziet dat de kolomnamen gelijk worden aan de namen van de oorspronkelijke vectoren. Je kunt rustig nog een kolom toevoegen:

tabel$jaar = c(13, 3, 28, 3, 21, 5, 11, 13, 48, 36)
tabel$geslaagd = c(0, 1, 1, 1, 1, 1, 1, 0, 0, 0)
tabel
##    proefpersoon geslacht jaar geslaagd
## 1            CW        V   13        0
## 2            AB        V    3        1
## 3            PB        M   28        1
## 4            SJ        V    3        1
## 5            SH        V   21        1
## 6            WP        V    5        1
## 7            VR        V   11        1
## 8            AR        V   13        0
## 9            TW        M   48        0
## 10           DW        M   36        0

Dit is erg flexibel in R. Je kunt een kolom toevoegen die gelijk is aan wat er in de jaar-kolom staat, maal 3:

tabel$raar = tabel$jaar * 3

of je kunt de jaar-kolom zelf met 10 vermenigvuldigen, maar alleen voor de vrouwen:

tabel$jaar = tabel$jaar * ifelse (tabel$geslacht=="V", 10, 1)

(ifelse betekent “if else” en krijgt de waarde van het tweede argument als het eerste argument TRUE is, en anders de waarde van het derde argument)

Net als bij rijtjes is een handige manier om wat informatie over een tabel te krijgen, het commando summary:

summary (tabel)
##   proefpersoon geslacht      jaar          geslaagd        raar       
##  AB     :1     M:3      Min.   : 28.0   Min.   :0.0   Min.   :  9.00  
##  AR     :1     V:7      1st Qu.: 31.5   1st Qu.:0.0   1st Qu.: 19.50  
##  CW     :1              Median : 49.0   Median :1.0   Median : 39.00  
##  DW     :1              Mean   : 80.2   Mean   :0.6   Mean   : 54.30  
##  PB     :1              3rd Qu.:125.0   3rd Qu.:1.0   3rd Qu.: 78.75  
##  SH     :1              Max.   :210.0   Max.   :1.0   Max.   :144.00  
##  (Other):4

[ Home | Vorige | Volgende ]