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

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *