我想知道我们是否可以将特征重要性获取为列列表而不是图表。我目前的代码如下:
xg_reg = xgb.train(params=params, dtrain=data_dmatrix, num_boost_round=10)import matplotlib.pyplot as pltxgb.plot_importance(xg_reg)plt.rcParams['figure.figsize'] = [5,5]plt.show()
这会给我生成如下图表:
由于我有超过800个不同的特征,我希望能直接获取最重要的特征列表。
回答:
你可以使用xgb.get_score()
。这里有一些例子:如何在XGBoost中获取特征重要性?