gpt4 book ai didi

python - 分组并填充缺失的日期时间值

转载 作者:行者123 更新时间:2023-11-30 08:56:18 26 4
gpt4 key购买 nike

我只是尝试按契约(Contract)和日期对 Pandas Dataframe 进行分组,并填充缺失的日期时间值。

我的输入是这样的:

contract         datetime             value1          value2
x 2019-01-01 00:00:00 50 60
x 2019-01-01 01:00:00 30 60
x 2019-01-01 02:00:00 70 80
y 2019-01-01 00:00:00 30 100

我想要做的是为每个合约获取所有可能的日期时间(从 00:00:00 到 23:00:00),并用 NaN 或 None 填充缺失值。

非常感谢。

最佳答案

您可以使用DataFrame.reindex每组 DataFrame.groupby和 lambda 函数:

df['datetime'] = pd.to_datetime(df['datetime'])

f= lambda x: x.reindex(pd.date_range(x.index.min().floor('d'),
.index.max().floor('d')+pd.Timedelta(23, 'H'),freq='H'))
df1 = (df.set_index('datetime')
.groupby('contract')
.apply(f)
.drop('contract', axis=1)
.reset_index())
print (df1)

关于python - 分组并填充缺失的日期时间值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59352953/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com