Ein Fehler, auf den Sie bei der Verwendung von Python stoßen können, ist:

TypeError: only size-1 arrays can be converted to Python scalars

Dieser Fehler tritt am häufigsten auf, wenn Sie versuchen, np.int() zu verwenden, um ein NumPy-Array von Float-Werten in ein Array von Integer-Werten zu konvertieren.

Diese Funktion akzeptiert jedoch nur einen einzelnen Wert anstelle eines Arrays von Werten.

Stattdessen sollten Sie x.astype(int) verwenden, um ein NumPy-Array aus Float-Werten in ein Array aus Integer-Werten umzuwandeln, da diese Funktion ein Array akzeptieren kann.

Das folgende Beispiel zeigt, wie dieser Fehler in der Praxis behoben werden kann.

So reproduzieren Sie den Fehler

Angenommen, wir erstellen das folgende NumPy-Array von Float-Werten:

import numpy as np

#erstelle ein NumPy-Array mit Float-Werten
x = np.array([3, 4.5, 6, 7.7, 9.2, 10, 12, 14.1, 15])

Nehmen wir nun an, wir versuchen, dieses Array von Float-Werten in ein Array von Integer-Werten umzuwandeln:

# Versuch, Array in Ganzzahlwerte umzuwandeln
np.int(x)

TypeError: only size-1 arrays can be converted to Python scalars 

Wir erhalten einen TypeError, weil die Funktion np.int() nur einzelne Werte akzeptiert, kein Array von Werten.

So beheben Sie den Fehler

Um ein NumPy-Array von Float-Werten in Integer-Werte umzuwandeln, können wir stattdessen den folgenden Code verwenden:

# Konvertieren Sie ein Array von Float-Werten in Integer-Werte
x.astype(int)

array([ 3,  4,  6,  7,  9, 10, 12, 14, 15])

Beachten Sie, dass das Array von Werten in Ganzzahlen konvertiert wurde und wir keinen Fehler erhalten, da die Funktion astype() ein Array von Werten verarbeiten kann.

Hinweis : Die vollständige Dokumentation zur Funktion astype() finden Sie hier .

Zusätzliche Ressourcen

Die folgenden Tutorials erklären, wie Sie andere häufige Fehler in Python beheben:

So beheben Sie KeyError in Pandas
Behebung: ValueError: Float NaN kann nicht in Integer konvertiert werden
Behebung: ValueError: Operanden konnten nicht zusammen mit Shapes übertragen werden

Statistik: Der Weg zur Datenanalyse

* Amazon Affiliate Link


Das könnte Sie auch interessieren: