¿Cómo extraer elementos diagonales de una array en R sin usar la función diag?

En este artículo, veremos cómo extraer elementos diagonales de una array en lenguaje de programación R sin usar la función diag() .

Matrix es un arreglo rectangular de números en filas y columnas. En una array, como sabemos, las filas son las que se ejecutan horizontalmente y las columnas son las que se ejecutan verticalmente. En la programación R, las arrays son estructuras de datos bidimensionales y homogéneas.

array[fila(array)==col(array)]

donde array es la array de entrada. row() verificará los elementos de la fila y col() verificará los elementos de la columna.

Ejemplo 1:

En este ejemplo, crearemos una array de 5*5 y mostraremos los elementos diagonales.

R

# create 5*5 matrix.
matrix_data=matrix(1:25,nrow=5,ncol=5)
  
# display actual matrix
print(matrix_data)
  
# extract diagonal elements
matrix_data[row(matrix_data)==col(matrix_data)]

Producción:

     [,1] [,2] [,3] [,4] [,5]
[1,]    1    6   11   16   21
[2,]    2    7   12   17   22
[3,]    3    8   13   18   23
[4,]    4    9   14   19   24
[5,]    5   10   15   20   25
[1]  1  7 13 19 25

Ejemplo 2:

En este ejemplo, crearemos una array de 3*3 y mostraremos los elementos diagonales.

R

# create 3*3 matrix.
matrix_data = matrix(c(1, 3, 4, 5, 6, 7, 9, 6, 3),
                     nrow=3, ncol=3)
  
# display actual matrix
print(matrix_data)
  
# extract diagonal elements
matrix_data[row(matrix_data) == col(matrix_data)]

Producción:

     [,1] [,2] [,3]
[1,]    1    5    9
[2,]    3    6    6
[3,]    4    7    3
[1] 1 6 3

Publicación traducida automáticamente

Artículo escrito por sravankumar8128 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *