numpy.diag_indices() en Python

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

Deja una respuesta

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