マクロ経済データの CSV をインポートしていますが、Pandas にこのタイプの日付を解釈させる方法がわかりません。自動的に行う方法はありますか、それとも自分で解析する必要がありますか?
パーサーに試してもらうと、次のようになります。
File "datetime.pxd", line 133, in datetime._string_to_dts (pandas/tslib.c:31399)ValueError: Unable to parse 2002Q1
はpd.Period
四半期ごとの期間を解析できるため、カスタム として使用できますdate_parser
。次に、日付を四半期の最終日に変換するには、次map
のend_time
属性を使用できます。
import pandas as pd
text = '''\
date val
2013Q2 100
2013Q3 120
'''
filename = '/tmp/data'
with open(filename, 'w') as f:
f.write(text)
df = pd.read_table(filename, sep='\s+', date_parser=pd.Period, parse_dates=[0])
df['date'] = df['date'].map(lambda x: x.end_time.date())
print(df)
# date val
# 0 2013-06-30 100
# 1 2013-09-30 120