电池寿命预测(Python代码,K最近邻回归模型(KNN)、支持向量机回归模型(SVM)和随机森林回归模型(Random Forest)三种模型,添加了中文注释)
时间:2024-05-04 07:05:57 来源:网络cs 作者:胡椒 栏目:卖家故事 阅读:
1.数据集来源:可以在这里找到公共数据集:BatteryArchive.org 从HNEI来源中选择了14个数据库。.csv文件数据是来自名为'HNEI_18650_NMC_LCO_25C_0-100_0.5/1.5C_'的时间序列。(
夏威夷自然能源研究所研究了14节NMC-LCO 18650电池,其标称容量为2.8安时,这些电池在25°C下以C/2充电速率和1.5C放电速率进行了1000次循环充放电。
基于这个源数据集,我创建了展示每个循环中电压和电流行为的特征。这些特征可以用于预测电池的剩余可用寿命(RUL)。数据集包含了这14节电池的特征数据。
)
下载官网界面
数据:每一列为:循环索引:循环次数 :放电时间(秒) :4.15V时刻(秒) :恒定电流时间(秒) :3.6-3.4V递减时间(秒) :最大放电电压(伏特) :最小充电电压(伏特) :充电时间(秒); 总时间(秒); RUL:目标
开始位置
截止位置
或者也可以关注开源代码:https://github.com/ignavinuales/Battery_RUL_Prediction 去更多详细了解数据集
本次项目代码的主要流程
导入必要的库,包括NumPy、Pandas、Plotly、Seaborn等。读取名为Battery_RUL.csv
的数据文件并显示前几行数据。为数据集添加一个名为Battery ID
的新列,并将电池ID分配给每个数据点。根据电池ID将数据分为训练集和测试集。创建相关性矩阵,并绘制相关性热力图,用于了解传感器之间的相关性。使用Pandas Profiling库查找传感器中的常数值列,并将其删除。计算传感器之间的相关性矩阵,删除高相关性的特征。列出训练集中的特征以及它们的缺失值数量。绘制每个传感器随剩余使用寿命(RUL)的变化曲线。创建一个函数backward_regression
,用于进行后向逐步回归选择特征。在训练数据上应用backward_regression
函数,选择一组特征。使用Min-Max标准化对特征进行预处理。创建K最近邻回归模型(kNN),训练模型并计算性能指标。创建支持向量机回归模型(SVM),训练模型并计算性能指标。创建随机森林回归模型(Random Forest),训练模型并计算性能指标。绘制实际值与预测值的散点图,并计算R-squared误差和均方根误差。绘制测试数据的RUL随时间的变化曲线。显示性能指标的数据框。 效果视频:电池寿命预测(Python代码,K最近邻回归模型(KNN)、支持向量机回归模型(SVM)和随机森林回归模型(Random Forest)三种模型,添加了中文注释_哔哩哔哩_bilibili
效果图
KNN 模型:
SVM
RF
对代码感兴趣的,可以关注代码和数据集放在一起的压缩包,在最后一行
import numpy as npimport pandas as pdfrom IPython.display import display, HTMLimport plotly.graph_objects as goimport plotly.express as pxfrom plotly.subplots import make_subplotsimport plotly.io as pioimport seaborn as snsfrom importlib import reloadimport matplotlib.pyplot as pltimport matplotlibimport warnings#压缩包:https://mbd.pub/o/bread/mbd-ZZWWmplx
本文链接:https://www.kjpai.cn/gushi/2024-05-04/164606.html,文章来源:网络cs,作者:胡椒,版权归作者所有,如需转载请注明来源和作者,否则将追究法律责任!
下一篇:返回列表