gpt4 book ai didi

python - 填补 Pandas 数据框中缺失的日子

转载 作者:太空宇宙 更新时间:2023-11-03 14:46:15 25 4
gpt4 key购买 nike

给定数据框

df = pd.DataFrame(data=[[1,1,3],[1,2,6],[1,4,3],[2,2,6]],columns=['ID','Day','Value'])

df
Out[58]:
ID Day Value
0 1 1 3
1 1 2 6
2 1 4 3
3 2 2 6

如您所见,对于 ID = 1,与 Day3 相关的值缺失,对于 ID =2,与 Day1 相关的值缺失......我想通过添加 np.nan 和缺失的日期来填补这些空白。 .

Out[59]: 
ID Day Value
0 1 1 3.0
1 1 2 6.0
2 1 3 NaN
3 1 4 3.0
4 2 1 NaN
5 2 2 6.0

最佳答案

您需要定义一个自定义函数来执行一些重建索引逻辑:

def f(x):
return x.set_index('Day').reindex(
np.arange(1, x.Day.max() + 1)
).Value

现在,执行groupby + apply:

df.groupby('ID').apply(f).reset_index()

ID Day Value
0 1 1 3.0
1 1 2 6.0
2 1 3 NaN
3 1 4 3.0
4 2 1 NaN
5 2 2 6.0

关于python - 填补 Pandas 数据框中缺失的日子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49136106/

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