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]])
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!