Des fonctions dans des fonctions
Pour écrire un code clair, il est parfois utile d’utiliser des fonctions à l’intérieur d’autres fonctions. Cela vous permet d’employer directement le résultat d’une fonction dans une autre, sans créer de variable intermédiaire. Vous avez déjà vu un exemple avec print() et paste().
company <- c("Goldman Sachs", "J.P. Morgan", "Fidelity Investments")
for(i in 1:3) {
print(paste("A large financial institution is", company[i]))
}
[1] "A large financial institution is Goldman Sachs"
[1] "A large financial institution is J.P. Morgan"
[1] "A large financial institution is Fidelity Investments"
paste() concatène les vecteurs de caractères, et print() les affiche dans la console.
L’exercice ci-dessous vous propose de simplifier le calcul de la matrice de corrélation grâce à des fonctions imbriquées. Trois vecteurs de prix d’actions, apple, ibm et micr, sont à votre disposition.
Cet exercice fait partie du cours
R intermédiaire pour la finance
Instructions
- Commencez par les regrouper avec
cbind()dans l’ordreapple,ibm,micr. Enregistrez le résultat dansstocks. - Ensuite, appliquez
cor()àstocks. - Voyons maintenant comment faire tout d’un coup. Utilisez
cbind()à l’intérieur decor()avec les 3 vecteurs d’actions dans le même ordre que ci-dessus pour créer la matrice de corrélation.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# cbind() the stocks
stocks <- ___
# cor() to create the correlation matrix
___
# All at once! Nest cbind() inside of cor()
___