Indexación¶
La indexación en NumPy es similar a la indexación en listas de Python, pero se extiende a múltiples dimensiones. En NumPy, los arrays se pueden indexar y rebanar para acceder a elementos y subarrays específicos. Aquí hay algunos ejemplos de indexación en NumPy:
- Acceder a elementos individuales de un array unidimensional:
In [1]:
Copied!
import numpy as np
# Crear un array unidimensional
a = np.array([1, 2, 3, 4, 5])
import numpy as np
# Crear un array unidimensional
a = np.array([1, 2, 3, 4, 5])
In [2]:
Copied!
# Acceder al primer elemento
print(a[0])
# Acceder al primer elemento
print(a[0])
1
In [3]:
Copied!
# Acceder al último elemento
print(a[-1])
# Acceder al último elemento
print(a[-1])
5
In [4]:
Copied!
# Acceder al tercer elemento
print(a[2])
# Acceder al tercer elemento
print(a[2])
3
- Acceder a elementos individuales de un array multidimensional:
In [5]:
Copied!
# Crear un array bidimensional
b = np.array([
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]]
)
# Crear un array bidimensional
b = np.array([
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]]
)
In [6]:
Copied!
# Acceder al primer elemento
print(b[0, 0])
# Acceder al primer elemento
print(b[0, 0])
1
In [7]:
Copied!
# Acceder al último elemento
print(b[-1, -1])
# Acceder al último elemento
print(b[-1, -1])
9
In [8]:
Copied!
# Acceder al elemento en la segunda fila y tercer columna
print(b[1, 2])
# Acceder al elemento en la segunda fila y tercer columna
print(b[1, 2])
6
- Rebanar un array unidimensional:
In [9]:
Copied!
# Rebanar un array unidimensional
a = np.array([1, 2, 3, 4, 5])
# Rebanar un array unidimensional
a = np.array([1, 2, 3, 4, 5])
In [10]:
Copied!
# Rebanar los primeros tres elementos
print(a[:3])
# Rebanar los primeros tres elementos
print(a[:3])
[1 2 3]
In [11]:
Copied!
# Rebanar los últimos dos elementos
print(a[-2:])
# Rebanar los últimos dos elementos
print(a[-2:])
[4 5]
In [12]:
Copied!
# Rebanar todos los elementos saltando de dos en dos
print(a[::2])
# Rebanar todos los elementos saltando de dos en dos
print(a[::2])
[1 3 5]
- Rebanar un array multidimensional:
In [13]:
Copied!
# Rebanar un array bidimensional
b = np.array([
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]]
)
# Rebanar un array bidimensional
b = np.array([
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]]
)
In [14]:
Copied!
# Rebanar la primera y segunda fila
print(b[:2, :])
# Rebanar la primera y segunda fila
print(b[:2, :])
[[1 2 3] [4 5 6]]
In [15]:
Copied!
# Rebanar la segunda y tercera columna
print(b[:, 1:])
# Rebanar la segunda y tercera columna
print(b[:, 1:])
[[2 3] [5 6] [8 9]]
In [16]:
Copied!
# Rebanar la diagonal principal
print(b.diagonal())
# Rebanar la diagonal principal
print(b.diagonal())
[1 5 9]