news 2026/4/3 5:08:52

输电线路故障诊断(Python代码,逻辑回归、决策树、随机森林、XGBoost和支持向量机五种不同方法诊断)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
输电线路故障诊断(Python代码,逻辑回归、决策树、随机森林、XGBoost和支持向量机五种不同方法诊断)

效果视频:输电线路故障诊断(Python代码,逻辑回归、决策树、随机森林、XGBoost和支持向量机五种不同方法诊断)_哔哩哔哩_bilibili

项目文件

code.py装载的是英文版本,图上显示英文标签及坐标,Chinese.py装载的是中文版本,图上显示中文标签等等,以及每一行代码几乎都有中文注释。code.py和Chinese.py是一样的代码。

1.数据

仿真平台

仿真模型分别获取单相接地故障、两相接地故障、两相间短路故障、三相接地故障、三相间短路故障和正常状态下的电流(Ia,Ib,Ic)大小和电压(Ua,Ub和Uc)大小。每种故障下获取1300行左右的数据

将故障区分为具体的不同类型(一共五种),再算上正常的状态,因此是六分类。这里随意举出每种类别的两个样本进行展示。

GCBAIaIbIcVaVbVc
1001-151.2918124-9.67745156385.800162260.400749853-0.132934945-0.267814907
1001-336.1861826-76.2832619518.328896580.312731934-0.123633156-0.189098779
1011-343.4870147104.56275133.7942853090.2720425010.011317575-0.283360076
1011-339.1254001105.4293167-0.2672412250.277820540.021756839-0.299577378
011019.38615173-785.553797768.7279081-0.210406869-0.00201120.212418069
011018.47841651-783.8619173767.9410527-0.217651204-0.002604510.220255714
0111506.5917463374.8825788-879.3449970.042029705-0.025636401-0.016393305
0111495.1384715387.4159615-880.42530960.042107683-0.025103056-0.017004627
1111-89.03263152-732.8168572821.9123732-0.0367594790.0052342190.03152526
1111-75.8022885-740.3563342816.2199695-0.036800630.0046859170.032114713
000010.5461862679.38231464-93.21467968-0.5376443450.548591338-0.010946993
00009.59094096580.11550744-92.99814299-0.5423905220.543819429-0.001428907

数据表格(开始位置)

数据表格(截止位置)

2.代码流程:

  1. 导入所需的Python库,包括NumPy、Pandas、Seaborn、Matplotlib等。

  2. 设置Seaborn和Matplotlib的样式和主题,包括字体、颜色、图形大小、边缘颜色等。

  3. 从数据集中读取10行数据,并对其进行样式设置,以显示不同的背景颜色。

  4. 使用df_class.info()检查数据集中列的数据类型。

  5. 使用df_class.isnull().sum().sum()检查数据集中是否存在空值。

  6. 使用df_class.shape获取数据集的形状。

  7. 绘制关于"Ground Fault"的柱状图和饼图,以及关于"Line A"、"Line B"、"Line C"中Fault的柱状图和饼图。

  8. 合并不同列的Fault信息,创建一个新的列"Fault_Type"。

  9. 替换"Fault_Type"列中的值,以便进行可视化。

  10. 分析数据集的统计信息,包括均值、标准差等。

  11. 统计不同"Fault_Type"的计数。

  12. 绘制"Fault_Type"计数的柱状图和饼图。

  13. 绘制电流和电压的图形。

  14. 绘制电压和电流的分布图,包括直方图、KDE图和箱线图。

  15. 选择没有故障的数据,并绘制相应的电流和电压图。

  16. 绘制没有故障数据的电流和电压的分布图。

  17. 选择不同Fault Type的数据,并绘制相应的电流和电压图。

  18. 绘制不同Fault Type数据的电流和电压的分布图。

  19. 将分类变量转换为数值变量,使用LabelEncoder将"Fault_Type"列编码为数值。

  20. 分离自变量和因变量。

  21. 划分训练集和测试集。

  22. 使用不同的机器学习模型,包括逻辑回归、决策树、随机森林、XGBoost和支持向量机进行训练和预测。

  23. 绘制混淆矩阵以评估模型性能。

  24. 绘制决策树的树状图。

  25. 创建模型性能汇总表,包括训练准确率和模型准确率得分。

  26. 使用随机森林和决策树模型进行预测,并将实际值和预测值进行对比。

3.效果

随机森林方法

决策树

XGBoost预测

支持向量机预测

逻辑回归

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/12 15:28:27

解锁原神辅助工具神器:Snap Hutao全方位提升游戏体验指南

解锁原神辅助工具神器:Snap Hutao全方位提升游戏体验指南 【免费下载链接】Snap.Hutao 实用的开源多功能原神工具箱 🧰 / Multifunctional Open-Source Genshin Impact Toolkit 🧰 项目地址: https://gitcode.com/GitHub_Trending/sn/Snap.…

作者头像 李华
网站建设 2026/3/27 5:37:43

7款直播计时工具深度评测:OBS插件如何提升你的直播效率

7款直播计时工具深度评测:OBS插件如何提升你的直播效率 【免费下载链接】obs-advanced-timer 项目地址: https://gitcode.com/gh_mirrors/ob/obs-advanced-timer 作为直播新手,是否曾因时间把控不当导致节目节奏混乱?OBS Advanced Ti…

作者头像 李华
网站建设 2026/4/1 16:06:48

消息留存工具深度解析:基于API Hook技术的即时通讯增强方案

消息留存工具深度解析:基于API Hook技术的即时通讯增强方案 【免费下载链接】RevokeMsgPatcher :trollface: A hex editor for WeChat/QQ/TIM - PC版微信/QQ/TIM防撤回补丁(我已经看到了,撤回也没用了) 项目地址: https://gitco…

作者头像 李华
网站建设 2026/4/2 11:33:50

基于fft npainting lama的自动化修图流水线设计案例

基于FFT、LaMa的自动化修图流水线设计案例 1. 为什么需要这条修图流水线? 你有没有遇到过这些情况: 电商运营要批量处理上百张商品图,每张都要抠掉杂乱背景、擦除拍摄水印;设计师赶稿时发现客户发来的原图里混进了临时标注、二…

作者头像 李华
网站建设 2026/3/24 22:28:46

FungalTraits数据库在微生物生态学研究中的创新应用与实践指南

FungalTraits数据库在微生物生态学研究中的创新应用与实践指南 【免费下载链接】microeco An R package for data analysis in microbial community ecology 项目地址: https://gitcode.com/gh_mirrors/mi/microeco 一、功能痛点:微生物功能研究中的挑战与突…

作者头像 李华
网站建设 2026/4/2 17:20:44

游戏模组管理工具进阶指南:从部署到优化的全流程解决方案

游戏模组管理工具进阶指南:从部署到优化的全流程解决方案 【免费下载链接】KK-HF_Patch Automatically translate, uncensor and update Koikatu! and Koikatsu Party! 项目地址: https://gitcode.com/gh_mirrors/kk/KK-HF_Patch 随着游戏模组生态的不断扩展…

作者头像 李华