返回顶部
首页 > 资讯 > 后端开发 > Python >python决策树预测学生成绩等级实现详情
  • 816
分享到

python决策树预测学生成绩等级实现详情

2024-04-02 19:04:59 816人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

目录1.数据准备1.1 引入头文件1.2 把student_1.csv数据拖入代码的同一文件夹下,同时读取文件中的数据1.3 特征选取2.数据处理2.1 对G1、G2、G3处理2.2

1.数据准备

1.1 引入头文件

stu-001

写入头文件之前,需要下载安装所必须的依赖包。有的无法使用pip安装的内容,使用手动导入依赖的方式.

1.2 把student_1.csv数据拖入代码的同一文件夹下,同时读取文件中的数据

stu-002

1.3 特征选取

课件中选取16个特征值,这里我采用了所有的特征值进行处理。

stu-003

2.数据处理

2.1 对G1、G2、G3处理

对于离散值进行连续处理,同时设置lambda函数计算G1、G2、G3。

stu-004

2.2 同样对Pedu参数进行连续值处理

stu-005

2.3 由于数据集中每个参数差异比较大,所以这里把特征参数统一改为数字形式

stu-006

2.4 对于当前处理过的数据集,划分训练集和测试集,并设置好随机种子等其他参数

stu-007

3.训练得到的模型

3.1 决策树

3.1.1 开始对训练集中的数据进行训练

stu-008

训练完的模型用来设置图像参数进行可视化展现。

stu-009

3.1.2 利用已经训练好的模型来预测G3的值

stu-010

对训练好的模型进行打分。

stu-011

3.1.3 对模型中的参数进行优化,输出优化后最好的分数

stu-012

3.1.4 优化后的模型来绘制决策树

stu-013

输出优化后的分数。

stu-014

3.2 集成学习

重新划分数据集用于训练模型。

stu-015

3.2.1 Decision Tree

这里采用集成学习的多个决策树方式进行训练模型,以及模型的评估。

stu-016

3.2.2 Bagging算法

这里采用集成学习的Bagging算法进行训练模型,对模型做出分数估测。

stu-017

3.2.3 这里采用集成学习的Random Forest算法进行训练模型,对模型做出分数估测

stu-018

3.2.4 这里采用集成学习的AdaBoost算法进行训练模型,对模型做出分数估测

stu-019

3.2.5 这里采用集成学习的GBDT算法进行训练模型,对模型做出分数估测

stu-020

4.评价结果:

模型得分
决策树(优化前)0.806
决策树(优化后)0.848
多个决策树0.831
Bagging0.890
Random Forest0.882
AdaBoost0.806
GBDT0.865

5.结论分析

根据决策树和集成学习两大类的训练模型可以看出:两种方式实现各有千秋,同样由优缺点。

决策树在优化参数前后预测结果有了较明显的提升,并且有可视化的图片便于观察。集成学习中的Bagging算法对于预测结果是最好的,随之的得分情况也是最高。但是AdaBoost算法的表现就相对不够。

以上就是python决策树预测学生成绩等级实现详情的详细内容,更多关于Python决策树预测学生成绩等级的资料请关注编程网其它相关文章!

--结束END--

本文标题: python决策树预测学生成绩等级实现详情

本文链接: https://lsjlt.com/news/117476.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • python决策树预测学生成绩等级实现详情
    目录1.数据准备1.1 引入头文件1.2 把student_1.csv数据拖入代码的同一文件夹下,同时读取文件中的数据1.3 特征选取2.数据处理2.1 对G1、G2、G3处理2.2...
    99+
    2024-04-02
  • Python基于决策树算法的分类预测怎么实现
    今天小编给大家分享一下Python基于决策树算法的分类预测怎么实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、决策树的...
    99+
    2023-06-26
  • python超详细实现完整学生成绩管理系统
    目录学生成绩管理系统简介源代码students.txtmain.pyLogin.pydb.pyMenuPage.pyview.py学生成绩管理系统简介 一个带有登录界面具有增减改查功...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作