Используйте numpy.sqrt
, а не math.sqrt
. numpy.sqrt
ожидает, что скаляр или массив в качестве входных данных, с другой стороны math.sqrt
могут обрабатывать только скаляры.
>>> import numpy as np
>>> import math
>>> a = np.arange(5)
>>> np.sqrt(a)
array([ 0. , 1. , 1.41421356, 1.73205081, 2. ])
#error
>>> math.sqrt(a)
Traceback (most recent call last):
File "", line 1, in
math.sqrt(a)
TypeError: only length-1 arrays can be converted to Python scalars
>>>