在我们调用sklearn中的算法时,如果不小心就会遇到下面这样的问题:
TypeError: fit() missing 1 required positional argument: 'y'
在fit时,明明加了train,label,但就是报错。
我总结了一下:
1,在调用算法时,没有加()
例如
from sklearn.discriminant_analysis import LinearDiscriminantAnalysis
clf = LinearDiscriminantAnalysis
clf.fit(train,label)
如果这么写,就会报错TypeError: fit() missing 1 required positional argument: 'y'
因为在sklearn的封装中,函数是大写字母开头的,所以LinearDiscrminantAnalysis是一个函数,你要在后面加个括号()。
下面的就不会报错
from sklearn.discriminant_analysis import LinearDiscriminantAnalysis
clf = LinearDiscriminantAnalysis()
clf.fit(train,label)
2,的确没有加label
在写代码的时候,不小心漏掉了,这个大家都能找出错误,所以出现这种情况一般是第一种情况。