Heim  >  Artikel  >  Backend-Entwicklung  >  Wie konvertiere ich eine Python-Sequenz in ein NumPy-Array mit ausgefüllten fehlenden Werten?

Wie konvertiere ich eine Python-Sequenz in ein NumPy-Array mit ausgefüllten fehlenden Werten?

Linda Hamilton
Linda HamiltonOriginal
2024-11-04 11:37:30677Durchsuche

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

Python-Sequenz in NumPy-Array mit ausgefüllten fehlenden Werten konvertieren

Beim Konvertieren einer Python-Sequenz von Listen variabler Länge in ein NumPy-Array erfolgt eine implizite Konvertierung in einen Objekttyp Array auftritt.

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

Ausgabe:

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

Das Erzwingen eines bestimmten Datentyps, z. B. int32, führt zu einer Ausnahme:

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

Ausnahme:

ValueError: setting an array element with a sequence.

Um ein dichtes NumPy-Array vom Typ int32 mit fehlenden Werten zu erhalten, die mit einem Platzhalter gefüllt sind, können Sie itertools.zip_longest:

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

Ausgabe:

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

Beachten Sie, dass in Python 2 stattdessen itertools.izip_longest verwendet werden sollte.

Das obige ist der detaillierte Inhalt vonWie konvertiere ich eine Python-Sequenz in ein NumPy-Array mit ausgefüllten fehlenden Werten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn