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