Python 获取类型错误:';numpy.float64';对象不可调用错误
线路 rl=[m(m*x)+b代表xs中的x] 正在导致“TypeError:'numpy.float64'对象不可调用”错误 代码Python 获取类型错误:';numpy.float64';对象不可调用错误,python,Python,线路 rl=[m(m*x)+b代表xs中的x] 正在导致“TypeError:'numpy.float64'对象不可调用”错误 代码 问题在于你写乘法的方式 m(m*x)与m*(m*x)不同,因为m()可能是一个数字时被解释为一个函数。此外,如果是这种情况,您还可以: m**2*x可以调用m吗?您试图用m(m*x)调用它。 xs=np.array([1, 2, 3, 4, 5, 6], dtype=np.float64) ys=np.array([5,4,6,5,6,7], dtype=np.f
问题在于你写乘法的方式
m(m*x)
与m*(m*x)
不同,因为m()
可能是一个数字时被解释为一个函数。此外,如果是这种情况,您还可以:
m**2*x
可以调用m
吗?您试图用m(m*x)
调用它。
xs=np.array([1, 2, 3, 4, 5, 6], dtype=np.float64)
ys=np.array([5,4,6,5,6,7], dtype=np.float64)
def best_fit_slope_and_b(xs, ys):
top= ( s.mean(xs) * s.mean(ys) ) - s.mean(xs*ys)
m=top/( (s.mean(xs)*s.mean(xs))-s.mean(xs*xs) )
b=s.mean(ys)-m*s.mean(xs)
return m,b
m,b = best_fit_slope_and_b(xs, ys)
print(m,b )
# below line causses error
rl=[ m(m*x)+b for x in xs]