Как исправить: TypeError: объект 'numpy.float64' не вызывается


Одна ошибка, с которой вы можете столкнуться при использовании Python:

TypeError : 'numpy.float64' object is not callable

Эта ошибка может возникнуть в двух разных сценариях:

  • Сценарий 1: умножение без использования знака *
  • Сценарий 2: отказ от использования функции NumPy Min

В следующих примерах показано, как исправить эту ошибку в каждом сценарии.

Сценарий 1: умножение без использования знака *

Предположим, мы пытаемся умножить два массива NumPy без использования знака умножения (*) следующим образом:

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

Мы получаем TypeError , потому что мы не использовали знак умножения (*) при попытке умножить два массива.

Чтобы избежать этой ошибки, нужно убедиться, что мы использовали знак умножения:

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]

Обратите внимание, что на этот раз мы не получили никакой ошибки.

Сценарий 2: отказ от использования функции NumPy Min

Предположим, мы используем следующий код, чтобы попытаться найти минимальное значение массива 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 

Мы получаем TypeError , потому что использовали функцию min() .

Вместо этого нам нужно использовать np.min() следующим образом:

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

Обратите внимание, что на этот раз мы не получили никакой ошибки.

Дополнительные ресурсы

В следующих руководствах объясняется, как исправить другие распространенные ошибки в Python:

Как исправить: столбцы перекрываются, но суффикс не указан
Как исправить: объект «numpy.ndarray» не имеет атрибута «добавлять»
Как исправить: при использовании всех скалярных значений необходимо передать индекс
Как исправить: ValueError: невозможно преобразовать число с плавающей запятой NaN в целое число

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.