问题
Python代码遇到如下问题:
TypeError: ‘numpy.float64‘ object is not callable
以及
原因
以上两种错误都是因为:不能对函数和浮点使用相同的变量名(在相同的命名空间中)
解决方法
将 r2 = r2_score(a,b)
改为 R2 = r2_score(a,b)
将 R2.append(R2)
改为 R2.append(R2_score)
最新发现,上述修改还存在一个严重的错误:变量名和函数名重复
!!!
即r2_score和R2_score在jupyter中好像没有大小写区分,反正我把代码复制到jupyter中运行又报了TypeError: ‘numpy.float64‘ object is not callable
的错误!尝试多种解决方法后发现是变量名和函数名重复了!!!
最终解决方法
一劳永逸法:变量名和函数名不要一样!!!
将 r2 = r2_score(a,b)
改为 R2_num = r2_score(a,b)
将 R2.append(R2)
改为 R2.append(R2_num)