gpt4 book ai didi

python - Pandas 日期功能 : Extracting Period Index information as String

转载 作者:太空宇宙 更新时间:2023-11-04 05:13:03 26 4
gpt4 key购买 nike

我有一个数据框(df_qtr),格式如下:

Index      2008Q4     2009Q1    2009Q2 
Ex 85833.33 85433.33 85766.66
Kc 153200.00 150533.33 149666.66
Al 83766.66 84200.00 84333.33
Jk 107933.33 113600.00 115366.66
Ar 151200.00 147133.33 143900.00
Ax 139300.00 137333.33 132700.00

列标题是期间索引,通过使用以下代码合并每月数据(日期是列标题)创建:

In[1]: df_qtr = df.groupby(pd.PeriodIndex(df.columns, freq='q'), axis=1).mean()

我想将列标题提取为字符串作为:

Out[1]: ['2008Q4', '2009Q1', '2009Q2']

我最接近的是将它转换回时间戳,然后是字符串:

 In[2]: list(df_qtr.columns.to_datetime().astype(str))
Out[2]: Index(['2008-10-01', '2009-01-01', '2009-04-01']

但同样不适用于周期索引,我收到以下错误:

ValueError: Cannot cast PeriodIndex to dtype <U0

我可以再次将上面的列表转换为 Period Index,然后将其转换为字符串,但是没有更简单的解决方法吗?

最佳答案

好的,我在浏览文档时找到了答案。函数 datetime.strftime() 可用于此:

In[3]: df_qtr.columns.strftime('%YQ%q')
Out[3]: array(['2008Q4', '2009Q1', '2009Q2'], dtype='<U6')

原来它可以与日期时间、时间戳和周期索引一起使用。要了解更多信息,请阅读此处:strftime() and strptime() Behavior

关于python - Pandas 日期功能 : Extracting Period Index information as String,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42495005/

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