Bloque 2:

- Indexación y slicing
- Operaciones básicas, broadcasting
- Valores únicos y cuentas

Introducción a NumPy - Bloque 2



En esta sección aprenderás lo básico sobre NumPy. Hemos preparado un video explicativo para ti, donde cubriremos los siguientes temas:

  • Indexación y slicing
  • Operaciones básicas, broadcasting
  • Valores únicos y cuentas

Indexación y slicing

Podemos indexar y usar slicing matrices NumPy de la misma manera que hacemos con listas de Python.

data = np.array([1, 2, 3])

print(data[1])
# 2
print(data[0:2])
# array([1, 2])
print(data[1:])
# array([2, 3])
print(data[-2:])
# array([2, 3])

La principal diferencia es que en lugar de usar múltiples corchetes, usamos comas para acceder a elementos.

Operaciones básicas, broadcasting

Si tuviésemos un par de arrays del misma forma, podríamos operar entre ellos. Consideremos el par de arreglos a continuación:

Podríamos sumarlos:

data = np.array([1, 2])
ones = np.ones(2, dtype=int)
print(data + ones)
# array([2, 3])


Esto en general se preserva para las otras operaciones básicas:

data - ones
# array([0, 1])

data * data
# array([1, 4])

data / data
# array([1., 1.])


¿Qué sucede si queremos una multiplicación escalar?

Broadcasting

data = np.array([1.0, 2.0])
data * 1.6
# array([1.6, 3.2])


Valores únicos y cuentas

Existen algunas funciones propias de los arreglos en NumPy:

  • .max() te dirá el máximo de los elementos del arreglo.
  • .min() te dirá el mínimo de los elementos del arreglo.
  • .sum() te dirá la suma de los elementos del arreglo.
  • .prod() te dirá el producto de los elementos del arreglo.

Incluso existen funciones que te devuelven estadísticos de tus datos:

  • .mean() te dirá el promedio de los elementos del arreglo.
  • .std() te dirá la desviación estándar de los elementos del arreglo.

También puedes utilizar operaciones matemáticas básicas:

  • np.sin(x) te devolverá el seno del vector x.
  • np.cos(x) te devolverá el coseno del vector x
  • Etcétera.

En cuanto a querer devolver valores únicos, podemos usar .uniques()

a = np.array([11, 11, 12, 13, 14, 15, 16, 17, 12, 13, 11, 14, 18])
unique_values = np.unique(a)
print(unique_values)
# [11 12 13 14 15 16 17 18]

Revisa los slides:

Google Slides

Ejecuta el código:

Open In Colab