gpt4 book ai didi

python - 根据最大和最小值填写缺失的日期 pandas

转载 作者:太空宇宙 更新时间:2023-11-04 02:38:01 25 4
gpt4 key购买 nike

如何为条件语句创建 python 语句

我有一个如下所示的数据框。我想知道如何根据数据框中的最大最小日期来填充缺失的日期。

Day            Movie          Rating
2017-01-01 GreatGatsby 5
2017-01-02 TopGun 5
2017-01-03 Deadpool 1
2017-01-10 PlanetOfApes 2

我怎样才能做一些东西来填补缺失的日期,比如

Day            Movie          Rating
2017-01-01 GreatGatsby 5
2017-01-02 TopGun 5
2017-01-03 Deadpool 1
2017-01-04 0 0
2017-01-05 0 0
2017-01-06 0 0
2017-01-07 0 0
2017-01-08 0 0
2017-01-09 0 0
2017-01-10 PlanetOfApes 2

最佳答案

使用resample + first/last/min/max:

df.set_index('Day').resample('1D').first().fillna(0).reset_index()

Day Movie Rating
0 2017-01-01 GreatGatsby 5.0
1 2017-01-02 TopGun 5.0
2 2017-01-03 Deadpool 1.0
3 2017-01-04 0 0.0
4 2017-01-05 0 0.0
5 2017-01-06 0 0.0
6 2017-01-07 0 0.0
7 2017-01-08 0 0.0
8 2017-01-09 0 0.0
9 2017-01-10 PlanetOfApes 2.0

如果 Day 不是 datetime 列,请先使用 pd.to_datetime 进行转换:

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

Wen asfreq 的替代方案:

df.set_index('Day').asfreq('D').fillna(0).reset_index()

Day Movie Rating
0 2017-01-01 GreatGatsby 5.0
1 2017-01-02 TopGun 5.0
2 2017-01-03 Deadpool 1.0
3 2017-01-04 0 0.0
4 2017-01-05 0 0.0
5 2017-01-06 0 0.0
6 2017-01-07 0 0.0
7 2017-01-08 0 0.0
8 2017-01-09 0 0.0
9 2017-01-10 PlanetOfApes 2.0

关于python - 根据最大和最小值填写缺失的日期 pandas,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47369873/

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