CommencezCommencez gratuitement

Regrouper une variable numérique en facteur

Votre vieil ami Dan vous a envoyé une liste de 50 obligations notées AAA appelée AAA_rank, où chaque obligation a un nombre supplémentaire de 1 à 100 décrivant à quel point il pense qu'elle sera rentable (100 étant la plus rentable). Vous souhaitez pousser l'analyse de ses propositions, mais avant tout, il serait utile de répartir les obligations en compartiments selon leur cote. Cela vous aidera à créer des groupes d'obligations, de la moins rentable à la plus rentable, pour les analyser plus facilement.

C'est un excellent exemple de création d'un facteur à partir d'un vecteur numérique. La façon la plus simple est d'utiliser cut(). Ci-dessous, la cote de Dan de 1 à 100 est répartie en 5 groupes espacés uniformément. Notez que le ( dans les niveaux du facteur signifie que nous n'incluons pas le nombre placé à côté dans ce groupe, et que le ] signifie que nous incluons ce nombre dans le groupe.

head(AAA_rank)

[1]  31  48 100  53  85  73

AAA_factor <- cut(x = AAA_rank, breaks = c(0, 20, 40, 60, 80, 100))

head(AAA_factor)

[1] (20,40]  (40,60]  (80,100] (40,60]  (80,100] (60,80] 
Levels: (0,20] (20,40] (40,60] (60,80] (80,100]

Dans la fonction cut(), utiliser breaks = vous permet d'indiquer les groupes selon lesquels R doit regrouper vos données!

Cette activité fait partie du cours

Introduction à R pour la finance

Voir le cours

Instructions de l’exercice

  • Plutôt que 5 compartiments, pouvez-vous n'en créer que 4? Dans breaks =, utilisez un vecteur de 0 à 100 où chaque élément est séparé de 25. Assignez-le à AAA_factor.
  • Les 4 compartiments n'ont pas des noms très parlants. Utilisez levels() pour renommer les niveaux en "low", "medium", "high" et "very_high", dans cet ordre.
  • Affichez le nouveau AAA_factor ainsi nommé.
  • Tracez AAA_factor pour visualiser votre travail!

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Create 4 buckets for AAA_rank using cut()
AAA_factor <- cut(x = ___, breaks = ___)

# Rename the levels 


# Print AAA_factor


# Plot AAA_factor
plot(___)
Modifier et exécuter le code