赞
踩
今天进行scikit-learn的特征选择实验时,一段非常短的代码不知为何总是报错,代码如下:
#Filename:FeatureV1.py
from sklearn.feature_selection import VarianceThreshold
X=[[0,0,1],[0,1,0],[1,0,0],[0,1,0],[0,1,1]]
sel=VarianceThreshold(threshold=(.8(1-.8)))
sel.fit_transform(X)
报错如下:
TypeError: 'float' object is not callable
我对着代码检查了好几遍,还是不明所以。
最后,总算在看代码提示<module> sel=VarianceThreshold(threshold=(.8(1-.8)))时发现错误,原因是乘法表示不规范,遂改之,如下:
#Filename:FeatureV1.py
from sklearn.feature_selection import VarianceThreshold
X=[[0,0,1],[0,1,0],[1,0,0],[0,1,0],[0,1,1]]
sel=VarianceThreshold(threshold=(.8*(1-.8)))
sel.fit_transform(X)
原因就是少了一个乘法符号,这是非常低级的错误,但是,对于水平不高的初学者来说要多练习编程,尽量的避免这种低水平的错误,不要让这种没有多少意义的错误打击我们学习编程的信心。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。