二元逻辑回归怎么筛选变量,请举例并附上代码
时间: 2024-06-04 16:12:52 浏览: 141
Logistic Regression-计算机科学
可以使用特征选择方法,如Wrapper、Filter和Embedded等方法来筛选变量。其中,Filter方法利用统计学方法对每个特征进行评估,例如Pearson相关系数、卡方检验和F统计量等,选择得分较高的特征。而Wrapper方法则以最终预测性能为评价准则,通过反复训练模型并评估每个特征的影响来选择最佳特征集合。
下面是一个用Wrapper方法进行特征选择的逻辑回归代码示例:
import pandas as pd
from sklearn.linear_model import LogisticRegression
from sklearn.feature_selection import RFECV
# 读取数据
data = pd.read_csv('data.csv')
X = data.drop(['target'], axis=1)
y = data['target']
# 建立模型
estimator = LogisticRegression()
# 递归特征消除(Wrapper方法)
selector = RFECV(estimator, step=1, cv=5, scoring='accuracy')
selector.fit(X, y)
# 输出筛选结果
print('筛选后的特征数量:', selector.n_features_)
print('筛选后的特征:', X.columns[selector.support_].tolist())
阅读全文