【发布时间】:2021-02-20 18:14:50
【问题描述】:
我正在做一个项目,我需要使用房价数据集绘制前 5 个特征重要性的条形图:高级回归技术,我使用以下方法计算了 RandomForest 回归器:
RF_model = RandomForestRegressor()
RF_model.fit(x,y)
RF_model.score(x,y)
pred=RF_model.predict(df_test)
output=pd.DataFrame({'Id':Id, 'SalePrice':pred})
output.to_csv('output.csv', index=False)
output.head(5)
并且还使用以下代码计算了特征重要性
feature = pd.DataFrame(df_train.drop(['SalePrice', 'Id'], axis=1).columns, RF_model.feature_importances_)
现在我正在使用以下代码绘制前 5 个功能的条形图
f, ax = plt.subplots(figsize=(8, 6))
fig = sns.barplot(data = feature.sort_values(by = 'Coeff', ascending=False)[:5], x= 'Feature', y='Coeff')
plt.show();
但它给了我以下错误
KeyError Traceback(最近调用 最后)在 1 f, ax = plt.subplots(figsize=(8, 6)) ----> 2 fig = sns.barplot(data = feature.sort_values(by = 'Coeff', 升序=False)[:5], x= 'Feature', y='Coeff') 3 plt.show();
~\Anaconda3\lib\site-packages\pandas\core\frame.py 在 sort_values(self, by, 轴, 升序, 就地, 种类, na_position, 忽略索引)4925 4926 by = by [0] -> 4927 k = self._get_label_or_level_values(by, axis=axis) 4928 4929 if isinstance(ascending, (tuple, list)):
~\Anaconda3\lib\site-packages\pandas\core\generic.py 在 _get_label_or_level_values(self, key, axis) 1690 values = self.axes[axis].get_level_values(key)._values 1691 else: -> 1692 raise KeyError(key) 1693 1694 # 检查重复项
KeyError: 'Coeff'
有人可以帮我解决这个问题吗?提前谢谢你!
【问题讨论】:
标签: python pandas jupyter-notebook