本文主要是介绍‘numpy.float64‘ object is not callable,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
重点放最前面:检查函数名是否和变量名重复,或者被重新定义了。
我自己定义的一个函数如下。
def rmspe(y, yhat):return np.sqrt(np.mean((yhat/y-1) ** 2))
然后我在运用它检测预测值和真实值的误差时发现,针对这一行出现了如下报错:
error = rmspe(np.expm1(Y_test), np.expm1(yhat))
TypeError: ‘numpy.float64’ object is not callable
而且这行之前明明没问题的。仔细检查这行前面的代码,发现我前面把rmspe重新定义成一个变量
rmspe = rmspe(np.expm1(Y_test), np.expm1(yhat))
当时这一行还可以调用到函数rmspe(),但之后rmspe就成了一个变量而非函数了。把rmspe改成别的名字即可。
这篇关于‘numpy.float64‘ object is not callable的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!