【Python特征工程系列】使用Boruta算法进行特征重要性分析(案例+源码)
from boruta import BorutaPy
from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import MinMaxScaler
# 加载波士顿房价数据集
boston = load_boston()
X = boston.data
y = boston.target
# 划分数据集为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=1)
# 特征缩放
scaler = MinMaxScaler()
X_train_scaled = scaler.fit_transform(X_train)
X_test_scaled = scaler.transform(X_test)
# 使用Boruta进行特征选择
boruta = BorutaPy(random_state=1)
boruta.fit(X_train_scaled, y_train)
# 打印每个特征的重要性
print(boruta.ranking_)
# 可视化特征重要性
# 注意:这一步通常需要额外的可视化代码,例如使用matplotlib绘图,这里我们省略了这部分
这段代码展示了如何使用BorutaPy库进行波士顿房价数据集的特征选择。首先加载数据集,划分为训练集和测试集,然后对训练集进行特征缩放。接着使用Boruta算法进行特征选择,并打印出每个特征的重要性排名。最后,可以通过可视化的方式展示特征的重要性,但这里为了简洁,省略了可视化的代码。
评论已关闭