¿Cómo creo una matriz numerosa de todo Verdadero o todo Falso?
En Python, ¿cómo creo una matriz numerosa de forma arbitraria llena de todo True
o todo False
?
La respuesta:
numpy.full((2, 2), True)
Explicación:
numpy crea matrices de todos unos o todos ceros muy fácilmente:
por ejemplo numpy.ones((2, 2))
onumpy.zeros((2, 2))
Dado que True
y False
están representados en Python como 1
y 0
, respectivamente, solo tenemos que especificar que esta matriz debe ser booleana usando el dtype
parámetro opcional y listo:
numpy.ones((2, 2), dtype=bool)
devoluciones:
array([[ True, True],
[ True, True]], dtype=bool)
ACTUALIZACIÓN: 30 de octubre de 2013
Desde la versión 1.8 de numpy , podemos usar full
para lograr el mismo resultado con una sintaxis que muestra más claramente nuestra intención (como señala fmonegaglia):
numpy.full((2, 2), True, dtype=bool)
ACTUALIZACIÓN: 16 de enero de 2017
Desde al menos la versión numpy 1.12 , full
se convierte automáticamente al dtype
segundo parámetro, por lo que podemos simplemente escribir:
numpy.full((2, 2), True)
numpy.full((2,2), True, dtype=bool)