基于集成分析的企鹅数据代码
时间: 2023-11-28 08:05:05 浏览: 196
Python优秀项目 基于Flask实现的提供抽取文档向量的服务系统源码+部署文档+全部数据资料
下面是一个基于集成分析的企鹅数据分类的 Python 代码示例:
```python
# 导入必要的库
import pandas as pd
from sklearn.ensemble import RandomForestClassifier
from sklearn.ensemble import VotingClassifier
from sklearn.tree import DecisionTreeClassifier
from sklearn.metrics import accuracy_score
from sklearn.model_selection import train_test_split
# 读取数据集
df = pd.read_csv('penguins.csv')
# 数据预处理
df = df.dropna() # 删除缺失值
X = df.iloc[:, 1:5] # 特征数据
y = df.iloc[:, -1] # 标签数据
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) # 划分训练集和测试集
# 构建单个决策树模型
dt = DecisionTreeClassifier(random_state=42)
dt.fit(X_train, y_train)
dt_pred = dt.predict(X_test)
dt_acc = accuracy_score(y_test, dt_pred)
print("单个决策树模型的预测准确率为:", dt_acc)
# 构建随机森林模型
rf = RandomForestClassifier(n_estimators=100, random_state=42)
rf.fit(X_train, y_train)
rf_pred = rf.predict(X_test)
rf_acc = accuracy_score(y_test, rf_pred)
print("随机森林模型的预测准确率为:", rf_acc)
# 构建投票分类器
vc = VotingClassifier(estimators=[('dt', dt), ('rf', rf)], voting='hard')
vc.fit(X_train, y_train)
vc_pred = vc.predict(X_test)
vc_acc = accuracy_score(y_test, vc_pred)
print("投票分类器的预测准确率为:", vc_acc)
```
这段代码使用了随机森林和决策树两个算法构建分类模型,然后使用投票分类器将两个模型集成起来进行预测。其中,随机森林模型使用了100个决策树进行集成,投票分类器使用了硬投票策略。最后输出了三个模型的预测准确率。
阅读全文