如何克服此错误“ TypeError:'float'对象不可调用”

时间:2019-09-02 12:37:19

标签: python

我一直在尝试解决这个回归问题,但是这个错误一次又一次地出现。

这是代码:

def CostFunction(x,y):    
    return ((-y(math.log(1/(1-math.e ** -x))))  -  ((1 - y) * (1 - math.log(1/(1-math.e ** -x)))))

我希望输出结果是以上公式的计算结果,但我收到以下错误消息:

  

TypeError:“浮动”对象不可调用

1 个答案:

答案 0 :(得分:1)

您缺少星号进行乘法运算

return ((-y * (math.log(1/(1-math.e ** -x)))) - ((1 - y) * (1 - math.log(1/(1-math.e ** -x)))))

当您执行y(...)时,它会尝试使用y内部的参数来调用(...)作为函数,因为y是数字类型,因此无法调用,因此这就是错误消息的意思。