La función numpy.diag_indices() devuelve índices para acceder a los elementos de la diagonal principal de un arreglo con dimensión mínima = 2. Devuelve índices en forma de tupla.
para acceder a la diagonal principal de una array.
Syntax: numpy.diag_indices(n, n_dim = 2)
Parámetros:
n : size of array, for which indices of diag elements are required along each dimension n_dim : [int, optional]number of dimensions.
Devolver :
Indices(as tuples) to access diagonal elements.
Código 1:
Python3
# Python Program illustrating # working of diag_indices() import numpy as geek # Creates a 5 X 5 array and returns indices of # main diagonal elements d = geek.diag_indices(5) print("Indices of diagonal elements as tuple : ") print(d, "\n") array = geek.arange(16).reshape(4,4) print("Initial array : \n", array) # Here we can manipulate diagonal elements # by accessing the diagonal elements d = geek.diag_indices(4) array[d] = 25 print("\n New array : \n", array)
Producción :
Indices of diagonal elements as tuple : (array([0, 1, 2, 3, 4]), array([0, 1, 2, 3, 4])) Initial array : [[ 0 1 2 3] [ 4 5 6 7] [ 8 9 10 11] [12 13 14 15]] New array : [[25 1 2 3] [ 4 25 6 7] [ 8 9 25 11] [12 13 14 25]]
Código 2: manipulación de array 2D
Python
# Python Program illustrating # working of diag_indices() import numpy as geek # Manipulating a 2D array d = geek.diag_indices(3, 2) array = geek.arange(12).reshape(4, 3) array[d] = 111 print("Manipulated array : \n", array)
Producción :
Manipulated array : [[111 1 2] [ 3 111 5] [ 6 7 111] [ 9 10 11]]
Código 3: Manipulación de array 3D
Python
# Python Program illustrating # working of diag_indices() import numpy as geek # Setting diagonal indices d = geek.diag_indices(1, 2) print("Diag indices : \n", d) # Creating a 3D array with all ones array = geek.ones((2, 2, 2), dtype=geek.int) print("Initial array : \n", array) # Manipulating a 3D array array[d] = 0 print("New array : \n", array)
Producción :
Diag indices : (array([0]), array([0])) Initial array : [[[1 1] [1 1]] [[1 1] [1 1]]] New array : [[[0 0] [1 1]] [[1 1] [1 1]]]
Referencias:
https://docs.scipy.org/doc/numpy-dev/reference/generated/numpy.diag_indices.html
Nota:
estos códigos no se ejecutarán en IDE en línea. Así que, por favor, ejecútelos en sus sistemas para explorar el funcionamiento.
Este artículo es aportado por Mohit Gupta_OMG 😀 . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA