Functies in functies
Om nette code te schrijven, is het soms handig om functies binnen andere functies te gebruiken. Zo kun je het resultaat van de ene functie direct in een andere gebruiken, zonder eerst een tussentijdse variabele te maken. Je hebt hiervan al een voorbeeld gezien met print() en 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() plakt de tekstvectoren aan elkaar en print() schrijft het naar de console.
In de oefening hieronder ga je het berekenen van de correlatiematrix vereenvoudigen met geneste functies. Drie vectoren met aandelenkoersen, apple, ibm en micr, staan voor je klaar.
Deze oefening maakt deel uit van de cursus
R voor finance voor gevorderden
Oefeninstructies
- Bind ze eerst met
cbind()samen in de volgordeapple,ibm,micr. Sla dit op alsstocks. - Gebruik daarna
cor()opstocks. - Kijk nu hoe dit in één keer werkt. Gebruik
cbind()binnencor()met de 3 aandelenvectoren in dezelfde volgorde als hierboven om de correlatiematrix te maken.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# cbind() the stocks
stocks <- ___
# cor() to create the correlation matrix
___
# All at once! Nest cbind() inside of cor()
___