Come risolvere il problema: typeerror: l'oggetto 'numpy.float64' non è richiamabile
Un errore che potresti riscontrare quando usi Python è:
TypeError : 'numpy.float64' object is not callable
Questo errore può verificarsi in due diversi scenari:
- Scenario 1: moltiplicazione senza utilizzare il segno *
- Scenario 2: impossibile utilizzare la funzione NumPy Min
Negli esempi seguenti viene illustrato come correggere questo errore in ogni scenario.
Scenario 1: moltiplicazione senza utilizzare il segno *
Supponiamo di provare a moltiplicare due array NumPy senza utilizzare un segno di moltiplicazione (*) come segue:
import numpy as np #define arrays x = np. array ([1, 2, 3, 4, 5]) y = np. array ([12, 14, 14, 19, 22]) #attempt to multiply two arrays together combo = (x)(y) #view result print (combo) TypeError : 'numpy.float64' object is not callable
Riceviamo un TypeError perché non abbiamo utilizzato il segno di moltiplicazione (*) durante il tentativo di moltiplicare i due array.
Il modo per evitare questo errore è assicurarci di aver utilizzato il segno di moltiplicazione:
import numpy as np #define arrays x = np. array ([1, 2, 3, 4, 5]) y = np. array ([12, 14, 14, 19, 22]) #multiply two arrays together combo = (x)*(y) #view result print (combo) [12 28 42 76 110]
Tieni presente che questa volta non riceviamo alcun errore.
Scenario 2: impossibile utilizzare la funzione NumPy Min
Supponiamo di utilizzare il codice seguente per tentare di trovare il valore minimo di un array NumPy:
import numpy as np #define array of data data = np. array ([3.3, 4.1, 4, 5.6, 8.1, 9.9, 9.7, 10.2]) #attempt to find minimum value of array min_val = min (data) #view minimum value print (min_val) TypeError : 'numpy.float64' object is not callable
Riceviamo un TypeError perché abbiamo utilizzato la funzione min() .
Dobbiamo invece utilizzare np.min() come segue:
import numpy as np #define array of data data = np. array ([3.3, 4.1, 4, 5.6, 8.1, 9.9, 9.7, 10.2]) #attempt to find minimum value of array min_val = np. min (data) #view minimum value print (min_val) 3.3
Tieni presente che questa volta non riceviamo alcun errore.
Risorse addizionali
I seguenti tutorial spiegano come correggere altri errori comuni in Python:
Come risolvere il problema: le colonne si sovrappongono ma non è specificato alcun suffisso
Come risolvere il problema: l’oggetto “numpy.ndarray” non ha un attributo “append”.
Come risolvere il problema: se utilizzi tutti i valori scalari, devi passare un indice
Come risolvere il problema: ValueError: impossibile convertire float NaN in int