以下是我的代码:-
from sklearn.feature_selection import SelectKBest, chi2, f_regression
X_train_new = SelectKBest(score_func=chi2,k=2000).fit_transform(X_train_2,y_train)
X_cv_new = SelectKBest(score_func=chi2,k=2000).transform(X_cv_2,y_cv)
X_test_new = SelectKBest(score_func=chi2,k=2000).transform(X_test_2,y_test)
X_train_new.shape, X_cv_new.shape, X_test_new.shape
我正在尝试选择前2000个功能,然后将其应用于tfidf特征化的火车,简历和测试数据。
在执行上述操作时,我得到了"TypeError: transform() takes 2 positional arguments but 3 were given"
答案 0 :(得分:0)
根据文档提供的内容, self 被视为一个参数,因此当您将 y_train,y_cv,和 y_test 提供给方法,这些被当作第三个参数。该方法采用( self ,X),其中X是形状[n_samples,n_features]的数组。