gpt4 book ai didi

python - 如何将缺少季度的 0 数据行插入到 pandas 数据框中?

转载 作者:行者123 更新时间:2023-12-01 08:07:31 24 4
gpt4 key购买 nike

我有一个数据框,其中包含给定季度的特定配额值(YYYY-Qx 格式),并且需要使用一些折线图将它们可视化。然而,有些季度缺失(因为这些季度没有配额)。

Period      Quota
2017-Q1 500
2017-Q3 600
2018-Q2 700

我想将它们(从 2017 年第一季度开始直到今天,即 2019 年第二季度)添加到数据帧中,配额列中的默认值为 0。所需的输出如下:

Period      Quota
2017-Q1 500
2017-Q2 0
2017-Q3 600
2017-Q4 0
2018-Q1 0
2018-Q2 700
2018-Q3 0
2018-Q4 0
2019-Q1 0
2019-Q2 0

我试过了

df['Period'] = pd.to_datetime(df['Period']).dt.to_period('Q')

然后用“Q”频率重新采样 df,但我一定做错了什么,因为它没有任何帮助。

任何帮助将不胜感激。

最佳答案

用途:

df.index = pd.to_datetime(df['Period']).dt.to_period('Q')
end = pd.Period(pd.datetime.now(), freq='Q')

df = (df['Quota'].reindex(pd.period_range(df.index.min(), end), fill_value=0)
.rename_axis('Period')
.reset_index()
)
df['Period'] = df['Period'].dt.strftime('%Y-Q%q')
print (df)
Period Quota
0 2017-Q1 500
1 2017-Q2 0
2 2017-Q3 600
3 2017-Q4 0
4 2018-Q1 0
5 2018-Q2 700
6 2018-Q3 0
7 2018-Q4 0
8 2019-Q1 0
9 2019-Q2 0

关于python - 如何将缺少季度的 0 数据行插入到 pandas 数据框中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55469706/

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