Niveaux
Revenons à l'étiquette Levels
: elle apparaît fréquemment lors de l'analyse des résultats de facteurs. Que faire si vous souhaitez afficher toutes les valeurs possibles qu'un facteur peut prendre ?
Pour afficher tous les niveaux d'un facteur, c'est-à-dire les différentes valeurs catégorielles qu'il contient, utilisez la fonction levels()
avec la variable facteur en argument. Voici un exemple :
# Vector of currencies as factor curr_f <- factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR')) # Output all the levels levels(curr_f)
Fait intéressant, il est possible de réorganiser ces niveaux sans modifier les données elles-mêmes. Cependant, il arrive que l'on rencontre des variables factorielles ordonnées. Prenons l'exemple de la taille : une personne peut être classée comme grande, moyenne ou petite. Cet ordre implique grande > moyenne > petite.
R prend en charge cette fonctionnalité en permettant de spécifier le paramètre ordered
à TRUE
. Cela organise les variables par ordre alphabétique pour les valeurs textuelles ou numériquement pour les valeurs numériques.
Si l'ordre numérique est généralement simple et souhaité, l'ordre alphabétique peut ne pas être approprié. Pour définir un ordre spécifique, il est également nécessaire de renseigner le paramètre labels
avec un vecteur listant vos valeurs dans l'ordre croissant.
Voici un exemple pour illustrer cela :
# Factors with no ordering factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR')) # Factors with ordering without labels parameter factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR'), ordered = T) # Factors with ordering with labels parameter factor(c('USD', 'EUR', 'AUD', 'NOK', 'CHF', 'EUR', 'AUD', 'EUR'), ordered = T, labels = c('USD', 'EUR', 'CHF', 'AUD', 'NOK'))
Observer la différence est instructif. Expérimentez par vous-même !
Swipe to start coding
Supposons que vous disposiez d'un vecteur de notes allant de 'A' à 'F'. Votre tâche consiste à le convertir en un facteur ordonné selon la séquence 'F < D < C < B < A' :
- Convertissez le vecteur
grades
en facteur en respectant l'ordre requis, puis stockez-le dans la variablegrades_f
. - Affichez l'intégralité de la variable
grades_f
.
Solution
Merci pour vos commentaires !