python-随机森林后筛选最重要变量,模型准确率、随机森林混淆矩阵结果、基尼系数排序图

简介: python-随机森林后筛选最重要变量,模型准确率、随机森林混淆矩阵结果、基尼系数排序图

在测试集上进行预测

y_pred = rf.predict(X_test)

计算模型准确率

accuracy = accuracy_score(y_test, y_pred)
print(“模型准确率:”, accuracy)
#### 1.1、对应输出
![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/direct/5728875180a74d048403be4a5e83eb4d.png)
### 2.随机森林混淆矩阵结果

<------------------随机森林混淆矩阵结果----------------------->

读取数据

data = pd.read_csv(‘C:\Users\31425\Desktop\新建文件夹\序列\蒿属1.csv’)
labels = data[‘species’]
data = data.drop(‘species’, axis=1)

拆分数据集

train_data, test_data, train_labels, test_labels = train_test_split(data, labels, test_size=0.2, random_state=42)

创建随机森林分类器

rfc = RandomForestClassifier(n_estimators=100, random_state=42)

训练模型

rfc.fit(train_data, train_labels)

进行预测

predictions = rfc.predict(test_data)

计算混淆矩阵

cm = confusion_matrix(test_labels, predictions)
print(cm)
#### 2.1矩阵结果在这里插入图片描述
### 3、随机森林对影响蒺藜科花粉判别的自变量重要性基尼系数排序图

《--------------随机森林对影响蒺藜科花粉判别的自变量重要性基尼系数排序图-------------------》

读取数据

data = pd.read_csv(‘C:\Users\31425\Desktop\新建文件夹\序列\蒿属1.csv’)

将数据集分为自变量和因变量

X = data.drop(‘species’, axis=1)
y = data[‘species’]

训练随机森林模型

model = RandomForestClassifier(n_estimators=100, random_state=42)
model.fit(X, y)

绘制特征重要性排序图

feature_importances = model.feature_importances_
feature_names = X.columns.values
indices = np.argsort(feature_importances)[::-1]
plt.bar(range(X.shape[1]), feature_importances[indices])

在每个柱子上添加文本标签

ontainer = plt.bar(range(X.shape[1]), feature_importances[indices])
padding = 0.01
for rect in plt.bar(range(X.shape[1]), feature_importances[indices]):
height = rect.get_height()
plt.text(rect.get_x() + rect.get_width() / 2, height + padding, f"{height:.3f}", ha=“center”, va=“bottom”)
plt.xticks(range(X.shape[1]), feature_names[indices], rotation=90)
plt.rcParams[‘font.family’] = ‘sans-serif’
plt.rcParams[‘font.sans-serif’] = [‘SimHei’] # 设置中文字体为黑体
plt.title(“随机森林对影响蒺藜科花粉判别的自变量重要性基尼系数排序图”)
plt.show()
#### 自变量重要性基尼系数排序图
### 最后
> **🍅 硬核资料**:关注即可领取PPT模板、简历模板、行业经典书籍PDF。  
> **🍅 技术互助**:技术群大佬指点迷津,你的问题可能不是问题,求资源在群里喊一声。  
> **🍅 面试题库**:由技术群里的小伙伴们共同投稿,热乎的大厂面试真题,持续更新中。  
> **🍅 知识体系**:含编程语言、算法、大数据生态圈组件(Mysql、Hive、Spark、Flink)、数据仓库、Python、前端等等。
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化学习资料的朋友,可以戳这里无偿获取](https://bbs.csdn.net/topics/618317507)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**


相关文章
|
7天前
|
Python
在 Python 中,对列表进行排序有两种常用的方法
在 Python 中,对列表进行排序有两种常用的方法
|
10天前
|
机器学习/深度学习 调度 Python
SOFTS: 时间序列预测的最新模型以及Python使用示例
这是2024年4月《SOFTS: Efficient Multivariate Time Series Forecasting with Series-Core Fusion》中提出的新模型,采用集中策略来学习不同序列之间的交互,从而在多变量预测任务中获得最先进的性能。
34 4
|
1天前
|
机器学习/深度学习 数据处理 索引
Python遍历矩阵的技巧与实践
Python遍历矩阵的技巧与实践
9 2
|
1天前
|
计算机视觉 Python
Python矩阵转灰度图技术解析
Python矩阵转灰度图技术解析
5 1
|
4天前
|
Python
Python解包到变量
【6月更文挑战第15天】
8 3
|
9天前
|
存储 安全 Java
在Python中,引用和赋值机制是理解变量和数据对象之间关系的关键
【6月更文挑战第16天】Python变量是对象引用,不存储数据,指向内存中的对象。赋值`=`创建引用,不复制对象。`b = a`时,a和b指向同一对象。引用计数管理对象生命周期,垃圾回收在引用数为0时回收对象。理解这些机制对优化内存使用关键。
32 7
|
6天前
|
IDE 前端开发 开发工具
怎么在isort Python 代码中的导入语句进行排序和格式化
`isort` 是一个Python工具,用于自动排序和格式化代码中的导入语句,提高代码整洁度和可读性。它支持自动排序、保留空白和注释、自定义排序规则、与多种编辑器集成以及命令行使用。安装`isort`可通过`pip install isort`,使用时可直接在Python代码中导入或通过命令行处理文件。示例展示了如何在代码中使用`isort`进行导入排序,包括基本排序、自定义设置和处理多个文件。`isort`适用于标准库、第三方库和自定义模块的导入排序,还可忽略特定导入,并能与IDE和编辑器插件集成,提升开发效率。
|
7天前
|
IDE 开发工具 开发者
isort——Python 代码中的导入语句进行排序和格式化
isort,全称是 "Import Sorting",是一个 Python 工具,用来对 Python 代码中的导入语句进行排序和格式化。它可以帮助我们按照一定的规则对导入的模块进行排序,使得代码更加整洁,易于阅读和维护。
|
18天前
|
机器学习/深度学习 自然语言处理 TensorFlow
使用Python实现深度学习模型:Transformer模型
使用Python实现深度学习模型:Transformer模型
23 0
使用Python实现深度学习模型:Transformer模型
|
20天前
|
存储 算法 Java
【经典算法】 leetcode88.合并排序的数组(Java/C/Python3实现含注释说明,Easy)
【经典算法】 leetcode88.合并排序的数组(Java/C/Python3实现含注释说明,Easy)
12 1