sklearn实现特征选择--过滤法(通过方差、f_regression、卡方)

import numpy as np
from sklearn.feature_selection import VarianceThreshold.SelectKBest
from sklearn.feature_selection import f_regression
from sklearn.feature_selection import chi2
from sklearn.feature_selection import RFE
from sklearn.feature_selection import SelectFromModel
from sklearn.linear_model import LogisticRegression
from sklearn.svm import SVR
from sklearn.ensemble import GradientBoostingClassifier

X = np.array([
	[0,2,0,3],
	[0,1,4,3],
	[0.1,1,1,3],
],dtype = np.float64)
Y = np.array([1,2,1])
variance = VarianceThreshold(threshold = 0.1)
variance.fit(X)
print(variance.transform(X))

sk1 = SelectKBest(f_regression,k=2)
sk1.fit(X,Y)
print(sk1.scores_)
print(sk1.transform(X))

sk2 = SelectKBest(chi2,k=2)
sk2.fit(X,Y)
print(sk2.scores_)
print(sk2.transform(X))

你可能感兴趣的:(机器学习)