对于一个二维的Datafram序列部分如图,实现对其中间空缺值的填补。
这里用到了pandas库中的重采样
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
#导入库
df = pd.read_csv(path)
df = df.drop_duplicates(['time'])#为防止有重复索引序列,将其删除
df = pd.DataFrame(df).set_index('time')#将时间列变为索引
df.index = pd.to_datetime(df.index, format='%Y-%m-%d %H:%M:%S')
df1 = df.resample('1S').ffill()#这里用重采样,变为每秒采样,并向前一直填充上一个值
df1.to_csv("")
其中resample,还可以应平均值插值,用后向值插值等进行填充,最后处理完效果如下:
实现了对缺失时间序列的填充。