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行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**


相关文章
|
11月前
|
Java 数据处理 索引
(Pandas)Python做数据处理必选框架之一!(二):附带案例分析;刨析DataFrame结构和其属性;学会访问具体元素;判断元素是否存在;元素求和、求标准值、方差、去重、删除、排序...
DataFrame结构 每一列都属于Series类型,不同列之间数据类型可以不一样,但同一列的值类型必须一致。 DataFrame拥有一个总的 idx记录列,该列记录了每一行的索引 在DataFrame中,若列之间的元素个数不匹配,且使用Series填充时,在DataFrame里空值会显示为NaN;当列之间元素个数不匹配,并且不使用Series填充,会报错。在指定了index 属性显示情况下,会按照index的位置进行排序,默认是 [0,1,2,3,...] 从0索引开始正序排序行。
767 0
|
11月前
|
存储 Java 数据处理
(numpy)Python做数据处理必备框架!(一):认识numpy;从概念层面开始学习ndarray数组:形状、数组转置、数值范围、矩阵...
Numpy是什么? numpy是Python中科学计算的基础包。 它是一个Python库,提供多维数组对象、各种派生对象(例如掩码数组和矩阵)以及用于对数组进行快速操作的各种方法,包括数学、逻辑、形状操作、排序、选择、I/0 、离散傅里叶变换、基本线性代数、基本统计运算、随机模拟等等。 Numpy能做什么? numpy的部分功能如下: ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组 用于对整组数据进行快速运算的标准数学函数(无需编写循环)。 用于读写磁盘数据的工具以及用于操作内存映射文件的工具。 线性代数、随机数生成以及傅里叶变换功能。 用于集成由C、C++
797 1
|
机器学习/深度学习 数据采集 数据挖掘
基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究(Python代码实现)
基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究(Python代码实现)
435 2
|
存储 机器学习/深度学习 人工智能
稀疏矩阵存储模型比较与在Python中的实现方法探讨
本文探讨了稀疏矩阵的压缩存储模型及其在Python中的实现方法,涵盖COO、CSR、CSC等常见格式。通过`scipy.sparse`等工具,分析了稀疏矩阵在高效运算中的应用,如矩阵乘法和图结构分析。文章还结合实际场景(推荐系统、自然语言处理等),提供了优化建议及性能评估,并展望了稀疏计算与AI硬件协同的未来趋势。掌握稀疏矩阵技术,可显著提升大规模数据处理效率,为工程实践带来重要价值。
680 58
|
12月前
|
机器学习/深度学习 数据采集 并行计算
多步预测系列 | LSTM、CNN、Transformer、TCN、串行、并行模型集合研究(Python代码实现)
多步预测系列 | LSTM、CNN、Transformer、TCN、串行、并行模型集合研究(Python代码实现)
1102 2
|
机器学习/深度学习 人工智能 PyTorch
200行python代码实现从Bigram模型到LLM
本文从零基础出发,逐步实现了一个类似GPT的Transformer模型。首先通过Bigram模型生成诗词,接着加入Positional Encoding实现位置信息编码,再引入Single Head Self-Attention机制计算token间的关系,并扩展到Multi-Head Self-Attention以增强表现力。随后添加FeedForward、Block结构、残差连接(Residual Connection)、投影(Projection)、层归一化(Layer Normalization)及Dropout等组件,最终调整超参数完成一个6层、6头、384维度的“0.0155B”模型
780 11
200行python代码实现从Bigram模型到LLM
|
算法 安全 新能源
基于DistFlow的含分布式电源配电网优化模型【IEEE39节点】(Python代码实现)
基于DistFlow的含分布式电源配电网优化模型【IEEE39节点】(Python代码实现)
805 0
|
机器学习/深度学习 算法 调度
【切负荷】计及切负荷和直流潮流(DC-OPF)风-火-储经济调度模型研究【IEEE24节点】(Python代码实现)
【切负荷】计及切负荷和直流潮流(DC-OPF)风-火-储经济调度模型研究【IEEE24节点】(Python代码实现)
564 0
|
12月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
1758 102
|
12月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
557 104

推荐镜像

更多