ComenzarEmpieza gratis

Iterar sobre elementos de una matriz

Hasta ahora has estado iterando sobre tipos de datos unidimensionales. Si quieres recorrer elementos en una matriz (columnas y filas), tendrás que usar bucles anidados. Usarás esta idea para imprimir las correlaciones entre tres acciones.

La forma más sencilla de pensarlo es que vas a empezar en la fila 1 y te moverás hacia la derecha, pasando por la col1, col2, …, hasta la última columna de la fila 1. Luego, bajas a la fila 2 y repites el proceso.

my_matrix
     [,1]   [,2]  
[1,] "r1c1" "r1c2"
[2,] "r2c1" "r2c2"

# Loop over 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 matriz de correlaciones, corr, está disponible para que la uses.

Este ejercicio forma parte del curso

R intermedio para finanzas

Ver curso

Instrucciones del ejercicio

  • Imprime corr para echar un vistazo a los datos.
  • Completa el bucle for anidado. Debe cumplir lo siguiente:
    • El bucle exterior debe iterar sobre las rows de corr.
    • El bucle interior debe iterar sobre las cols de corr.
    • La sentencia de impresión debe mostrar los nombres de la columna y la fila actuales, y también su correlación.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# 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]))
    }
}
Editar y ejecutar código