📜  上采样后 pandas 向后填充 - Python (1)

📅  最后修改于: 2023-12-03 15:21:28.494000             🧑  作者: Mango

上采样后 pandas 向后填充 - Python

在数据处理过程中,经常需要对时间序列数据进行重采样,即将数据从原有的采样频率转换为新的采样频率。在这个过程中,可能会遇到原有的数据缺失,需要对缺失的数据进行填充。在 pandas 中,可以使用 resample() 方法进行重采样,并使用 fillna() 方法对缺失数据进行填充。

下面是一个示例代码,以分钟为时间间隔生成了一个时间序列数据,并随机删除了一些数据点,然后使用 resample() 方法将数据重采样为每 15 分钟一次,再使用 fillna() 方法填充缺失数据。

import pandas as pd
import numpy as np

# 生成时间序列数据
rng = pd.date_range(start='2021-01-01', end='2021-01-02', freq='min')
ts = pd.Series(np.random.randn(len(rng)), index=rng)
# 随机删除一些数据点
ts = ts.mask(np.random.random(ts.shape) < 0.1)

# 重采样为每 15 分钟一次,并向后填充缺失数据
ts_resampled = ts.resample('15T').ffill()

print('原始数据长度:', len(ts))
print('重采样后数据长度:', len(ts_resampled))

输出结果:

原始数据长度: 1441
重采样后数据长度: 97

可以看到,原始数据为每分钟一次,长度为 1441;重采样后数据为每 15 分钟一次,长度为 97,同时缺失的数据点被向后填充了。

以上就是关于上采样后 pandas 向后填充的介绍,希望对您有所帮助。