Maison >développement back-end >Tutoriel Python >Comment convertir une séquence Python en un tableau NumPy avec les valeurs manquantes remplies ?

Comment convertir une séquence Python en un tableau NumPy avec les valeurs manquantes remplies ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-04 11:37:30774parcourir

How to Convert a Python Sequence to a NumPy Array with Missing Values Filled?

Convertir une séquence Python en tableau NumPy avec les valeurs manquantes remplies

Lors de la conversion d'une séquence Python de listes de longueur variable en un tableau NumPy, une conversion implicite en un type d'objet tableau se produit.

<code class="python">v = [[1], [1, 2]]
np.array(v)</code>

Sortie :

array([[1], [1, 2]], dtype=object)

L'application d'un type de données spécifique, tel que int32, entraînera une exception :

<code class="python">np.array(v, dtype=np.int32)</code>

Exception :

ValueError: setting an array element with a sequence.

Pour obtenir un tableau NumPy dense de type int32 avec des valeurs manquantes remplies d'un espace réservé, vous pouvez utiliser itertools.zip_longest :

<code class="python">import itertools
np.array(list(itertools.zip_longest(*v, fillvalue=0))).T</code>

Sortie :

array([[1, 0],
       [1, 2]])

Notez que dans Python 2, itertools.izip_longest doit être utilisé à la place.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn