Fractionner
Il arrive souvent que vous ayez, dans un même data frame, des données pour plusieurs groupes. Le data frame cash en était un exemple au chapitre 3. On y trouvait les colonnes cash_flow et year pour deux groupes (les entreprises A et B). Et si vous vouliez scinder ce data frame en deux data frames séparés selon la company? Dans le prochain exercice, vous verrez pourquoi cela peut être utile, mais d'abord voyons comment y parvenir avec la fonction split().
Créez un grouping sur lequel fractionner et utilisez split() pour créer une liste de deux data frames.
grouping <- cash$company
split_cash <- split(cash, grouping)
split_cash
$A
company cash_flow year
1 A 1000 1
2 A 4000 3
3 A 550 4
$B
company cash_flow year
4 B 1500 1
5 B 1100 2
6 B 750 4
7 B 6000 5
Pour retrouver votre data frame d'origine, utilisez unsplit(split_cash, grouping).
Cette activité fait partie du cours
Introduction à R pour la finance
Instructions de l’exercice
- Le data frame
cashest disponible dans votre espace de travail. - Créez un nouveau
groupingà partir de la colonneyear. - Utilisez
split()pour divisercashen une liste de 5 data frames séparés paryear. Assignez le résultat àsplit_cash. - Affichez
split_cash. - Utilisez
unsplit()pour regrouper de nouveau les data frames. Assignez le résultat àoriginal_cash. - Affichez
original_cashpour le comparer au premier data framecash.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Define grouping from year
grouping <-
# Split cash on your new grouping
split_cash <-
# Look at your split_cash list
# Unsplit split_cash to get the original data back.
original_cash <-
# Print original_cash