Aan de slagGa gratis aan de slag

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

Cursus bekijken

Oefeninstructies

  • Bind ze eerst met cbind() samen in de volgorde apple, ibm, micr. Sla dit op als stocks.
  • Gebruik daarna cor() op stocks.
  • Kijk nu hoe dit in één keer werkt. Gebruik cbind() binnen cor() 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()
___
Code bewerken en uitvoeren