可以使用 Pandas 的 resample() 函数来实现时间序列的升采样,并使用 fillna() 函数将缺失的值填充为 0。

例如,假设有一个每天的时间序列 dataframe,需要将其升采样为每小时一次,并用 0 填充多余的时间点,可以这样实现:

import pandas as pd

# 创建每天的时间序列
date_rng = pd.date_range(start='1/1/2021', end='1/7/2021', freq='D')
df = pd.DataFrame(date_rng, columns=['date'])
df['data'] = pd.Series(range(len(date_rng)))

# 将时间序列升采样为每小时一次
df = df.set_index('date').resample('H').asfreq()

# 用 0 填充缺失的值
df = df.fillna(0)

其中,set_index() 函数将日期列设置为索引列,resample() 函数将时间序列升采样为每小时一次,asfreq() 函数将缺失的值填充为 NaN,最后使用 fillna() 函数将 NaN 填充为 0。

Pandas 时间序列升采样:用 0 填充缺失值

原文地址: https://www.cveoy.top/t/topic/nsQg 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录