Ciclo sugli elementi di una matrice
Finora hai iterato su tipi di dato monodimensionali. Se vuoi scorrere gli elementi di una matrice (colonne e righe), dovrai usare cicli annidati. Userai questa idea per stampare le correlazioni tra tre titoli.
Il modo più semplice per pensarci è che parti dalla riga 1 e ti sposti a destra, toccando col1, col2, …, fino all'ultima colonna della riga 1. Poi scendi alla riga 2 e ripeti il processo.
my_matrix
[,1] [,2]
[1,] "r1c1" "r1c2"
[2,] "r2c1" "r2c2"
# Loop su my_matrix
for(row in 1:nrow(my_matrix)) {
for(col in 1:ncol(my_matrix)) {
print(my_matrix[row, col])
}
}
[1] "r1c1"
[1] "r1c2"
[1] "r2c1"
[1] "r2c2"
La matrice di correlazione, corr, è già disponibile per te.
Questo esercizio fa parte del corso
R intermedio per la finanza
Istruzioni dell'esercizio
- Stampa
corrper dare un'occhiata ai dati. - Completa il ciclo for annidato! Dovrebbe soddisfare quanto segue:
- Il ciclo esterno deve scorrere le
rowdicorr. - Il ciclo interno deve scorrere le
coldicorr. - L'istruzione di stampa deve mostrare i nomi della colonna e della riga correnti e anche la loro correlazione.
- Il ciclo esterno deve scorrere le
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Print out corr
___
# Create a nested loop
for(row in 1:nrow(___)) {
for(col in 1:___(corr)) {
print(paste(colnames(corr)[___], "and", rownames(corr)[___],
"have a correlation of", corr[row,col]))
}
}