< Programmer en R

En R, un facteur (ou factor) est un vecteur contenant uniquement certaines valeurs prédéfinies[1]. Les valeurs pré-définies sont appelées des levels.

La librairie forcats contient un certain nombre de fonction permettant de travailler facilement avec des facteurs.

Introduction

Dans cette section, on génère aléatoirement un vecteur pouvant prendre trois valeurs : "fraise", "banane" ou "orange". On part du vecteur contenant les trois valeurs :

> c("orange", "banane", "fraise")
[1] "orange" "banane" "fraise"

On tire aléatoirement dans ce vecteur grâce à la fonction sample() avec l'option size=10 et replace = TRUE (tirage avec remise.

> x <- sample(x = c("orange", "banane", "fraise"), size = 10, replace = TRUE)
> x
 [1] "banane" "banane" "orange" "banane" "orange" "fraise" "fraise" "orange" "banane" "banane"

Pour le moment, le vecteur x est de classe chaîne de caractère :

> class(x)
[1] "character"

Comme il prend un nombre fini de valeurs, on pourrait aussi le définir comme un facteur :

> x <- factor(x = x)
> x
 [1] banane banane orange banane orange fraise fraise orange banane banane
Levels: banane fraise orange

La fonction levels() permet d'obtenir la liste des valeurs :

> levels(x = x)
[1] "banane" "fraise" "orange"

Tri à plat

La fonction fct_count() permet de réaliser un tri à plat :

> fct_count(x)
# A tibble: 3 × 2
       f     n
  <fctr> <int>
1 banane     5
2 fraise     2
3 orange     3

Notes et références

  1. http://adv-r.had.co.nz/Data-structures.html#vectors

Voir aussi

Cet article est issu de Wikibooks. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.