Handig gebruik maken van factor-vectoren
We hebben gezien dat het factor datatype in sommige gevallen handig kan zijn en soms zelfs nodig is om het gewenste resultaat te krijgen. Maak je geen zorgen, in veel gevallen volstaat de character
datatype. Wil je echter een volgorde of hiërarchie vastleggen in een character
vector, maak dan gebruik van het factor
datatype. Hiermee bespaar je veel sorteerwerk achteraf en zorg je ervoor dat je voorbewerking van de data staat als een huis.
Om nog een keer het gebruik van de factor
datatype te laten zien, werken we nog 1 voorbeeld uit waarin we deze gebruiken. We maken opnieuw een klein werknemersbestandje, maar deze keer met de functies van de werknemers. Alhoewel ik het vrij ouderwets vind, bestaat er een bepaalde hiërarchie onder functies. We stellen deze volgorde vast door gebruik te maken van een factor en laten uiteindelijk een tabel zien waarin gesorteerd naar hiërarchie de maandsalarissen worden getoond per persoon.
# De namen van de werknemers aangeven
namenPersonen <- c("Jack","Rosemarijn","Arie","Marco","Koen","Noah",
"Helga","Francis","Henk","Winston")
# De salarissen van de werknemers definiëren
salarissenPersonen <- c(9000,2800,5000,2000,3600,5000,7000,3100,
6000,2000)
# De functies van de werknemers aangeven
functiesPersonen <- c("Managing partner","Secretariaat",
"Senior","Junior","Senior","Senior",
"Partner","Senior","Partner","Facilitair")
# De hiërarchie van functies aangeven
functiesPersonen2 <- factor(functiesPersonen,levels=c(
"Managing partner","Partner","Senior","Junior","Secretariaat","Facilitair"))
werknemersbestand <- data.frame(
namenPersonen,salarissenPersonen,functiesPersonen,functiesPersonen2)
werknemersbestand
## namenPersonen salarissenPersonen functiesPersonen functiesPersonen2
## 1 Jack 9000 Managing partner Managing partner
## 2 Rosemarijn 2800 Secretariaat Secretariaat
## 3 Arie 5000 Senior Senior
## 4 Marco 2000 Junior Junior
## 5 Koen 3600 Senior Senior
## 6 Noah 5000 Senior Senior
## 7 Helga 7000 Partner Partner
## 8 Francis 3100 Senior Senior
## 9 Henk 6000 Partner Partner
## 10 Winston 2000 Facilitair Facilitair
Zoals je kunt zien, hebben we een dataframe werknemersbestand
aangemaakt die de namen, salarissen en functies van de personen bevat. Hierbij is functiesPersonen
van het datatype character
en functiesPersonen2
van het type factor
.