快捷搜索:  汽车  科技

python时序分析算法(python算法体验-1.基于线性拟合的剩余寿命预测)

python时序分析算法(python算法体验-1.基于线性拟合的剩余寿命预测)在实际设备寿命预测过程中,通过设定固定状态阈值,即可预测剩余的设备工作寿命。当然实际过程需要考虑的因素很多,如用于寿命预测的状态数据如何得到,多阈值如何考虑等。后续二十个数据周期的状态趋势变化(既寿命使用情况)直观看一下,数据有上升的线性趋势,因此利用线性拟合方法y=kx b得到线性函数系数k b.模拟状态数据线性拟合基于该状态数据的变化趋势,我们可以预测后续20个数据采集周期的状态变化:

在工业领域的设备寿命预测中,在没有历史数据的基础上,往往可以假设寿命退化遵循线性、指数等规律,本例分享一下基于线性拟合的数据预测,可以结合具体工业应用进行RUL预测。

例:假设有一组能够表征设备寿命状态,且经过处理的数据,如下图:

python时序分析算法(python算法体验-1.基于线性拟合的剩余寿命预测)(1)

模拟状态数据

图中,x轴表示数据采集的周期,y表示每个采集周期的状态数据值(假设该数据跟寿命有关系)。

直观看一下,数据有上升的线性趋势,因此利用线性拟合方法y=kx b得到线性函数系数k b.

python时序分析算法(python算法体验-1.基于线性拟合的剩余寿命预测)(2)

模拟状态数据线性拟合

基于该状态数据的变化趋势,我们可以预测后续20个数据采集周期的状态变化:

python时序分析算法(python算法体验-1.基于线性拟合的剩余寿命预测)(3)

后续二十个数据周期的状态趋势变化(既寿命使用情况)

在实际设备寿命预测过程中,通过设定固定状态阈值,即可预测剩余的设备工作寿命。当然实际过程需要考虑的因素很多,如用于寿命预测的状态数据如何得到,多阈值如何考虑等。

import pandas as pd import matplotlib.pyplot as plt import numpy as np def linefit(Y):#线性拟合 X = np.arange(1 len(Y) 1) z = np.polyfit(X Y 1)#k b = [0.00460042 0.74567879],线性函数系数 p = np.poly1d(z)#p = 0.0046 x 0.7457,线性函数 return z p

测试代码:

if __name__ == '__main__': data = pd.read_excel('*****.xlsx').values x = np.arange(1 len(data) 1) z p = linefit(data) fittedData = [p(i) for i in x] predX = [len(data) i for i in range(1 21)] predY = [p(i) for i in predX] plt.plot(predX predY 'r--') plt.plot(fittedData) plt.plot(x data) plt.show()

python时序分析算法(python算法体验-1.基于线性拟合的剩余寿命预测)(4)

猜您喜欢: