IniziaInizia gratis

Funzioni dentro funzioni

Per scrivere codice pulito, a volte è utile usare funzioni all'interno di altre funzioni. Questo ti permette di usare il risultato di una funzione direttamente in un'altra, senza dover creare una variabile intermedia. In realtà hai già visto un esempio con print() e 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() concatena i vettori di caratteri, e print() li stampa in console.

L'esercizio qui sotto esplora come semplificare il calcolo della matrice di correlazione usando funzioni annidate. Tre vettori di prezzi azionari, apple, ibm e micr, sono a tua disposizione.

Questo esercizio fa parte del corso

R intermedio per la finanza

Visualizza il corso

Istruzioni dell'esercizio

  • Per prima cosa, usa cbind() per combinarli nell'ordine apple, ibm, micr. Salvalo in stocks.
  • Poi, usa cor() su stocks.
  • Ora, vediamo come fare tutto in un solo passaggio. Usa cbind() dentro cor() con i 3 vettori dei titoli nello stesso ordine di sopra per creare la matrice di correlazione.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# cbind() the stocks
stocks <- ___

# cor() to create the correlation matrix
___

# All at once! Nest cbind() inside of cor()
___
Modifica ed esegui il codice