python - 使用 SelectKBest 的问题 [scikit-learn]

标签 python machine-learning scikit-learn classification feature-selection

我是 scikit-learn 和 python 的初学者,我使用 feature_selection 包中的 SelectKBest 尝试了这段看起来非常简单的代码。

    train = pd.read_csv("train.csv")
test = pd.read_csv('test.csv')
train = SelectKBest(chi2, k=120).fit_transform(train)

print train.shape

但我遇到了这个错误,我真的不知道如何解决!!

TypeError: fit() takes exactly 3 arguments (2 given) 

你们能帮我解决一下吗:(?

最佳答案

问题是它需要 3 个参数。

适合(X,Y) X : array-like, shape = [n_samples, n_features] 这是训练输入样本。 y : array-like, shape = [n_samples] 是目标值(分类中的类标签,回归中的实数)。

fit_transform(X,y=None, **fit_params)[来源]

因此,要解决您的问题,如果标签存储在训练/测试数据的最后一列中,即 train.ix[:,-1],您可以这样做:

train = pd.read_csv("train.csv")
test = pd.read_csv('test.csv')
model = SelectKBest(chi2, k=120).fit_transform(train.ix[:,:-1],train.ix[:,-1])

print train.shape

这段代码对我有用。

关于python - 使用 SelectKBest 的问题 [scikit-learn],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36755737/

相关文章:

python - 使用分页的 PyMongo 中光标太大的 MemoryError

python - pandas 未在 pyCharm 中显示输出,但在 google colab 中显示

scikit-learn - 在没有图集的情况下安装 sci-kit learn

python - KNeighborsClassifier 中如何使用参数 "weights"?

python-3.x - '损失: nan' during training of Neural Network in Keras

python - 在 luigi 中处理 unicode

python - 将 Python Ray 与 CPLEX 模型对象结合使用

python - 使用 BeautifulSoup 和 Requests 从 xml 文件打印数据

python - numpy 将分类字符串数组转换为整数数组

numpy - 创建预测产品价格的回归模型