python 卡方检验 特征选择_使用scikit-learn进行特征选择 | 所有编程讨论 | zhouni.net...

我是机器学习的新手。我正在使用Scikit Learn SVM准备我的数据进行分类。为了选择最好的功能,我使用了以下方法:

SelectKBest(chi2, k=10).fit_transform(A1, A2)

由于我的数据集由负值组成,因此出现以下错误:

ValueError Traceback (most recent call last)

/media/5804B87404B856AA/TFM_UC3M/test2_v.py in ()

----> 1

2

3

4

5

/usr/local/lib/python2.6/dist-packages/sklearn/base.pyc in fit_transform(self, X, y, **fit_params)

427 else:

428 # fit method of arity 2 (supervised transformation)

--> 429 return self.fit(X, y, **fit_params).transform(X)

430

431

/usr/local/lib/python2.6/dist-packages/sklearn/feature_selection/univariate_selection.pyc in fit(self, X, y)

300 self._check_params(X, y)

301

--> 302 self.scores_, self.pvalues_ = self.score_func(X, y)

303 self.scores_ = np.asarray(self.scores_)

304 self.pvalues_ = np.asarray(self.pvalues_)

/usr/local/lib/python2.6/dist- packages/sklearn/feature_selection/univariate_selection.pyc in chi2(X, y)

190 X = atleast2d_or_csr(X)

191 if np.any((X.data if issparse(X) else X) < 0):

--> 192 raise ValueError("Input X must be non-negative.")

193

194 Y = LabelBinarizer().fit_transform(y)

ValueError: Input X must be non-negative.

有人能告诉我如何转换我的数据?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值