Pythonで日付を扱う際、日付情報が整数形式(YYYYMMDD)で与えられることがあります。この記事では、そのような整数形式の日付をPythonの日付オブジェクトに変換する方法を紹介します。
YYYYMMDD形式の整数を日付に変換する
Pythonの標準ライブラリであるdatetime
を使用して、整数形式の日付を日付オブジェクトに変換することができます。以下にそのコードを示します。
from datetime import datetime
# YYYYMMDD形式の日付
date_int = 20220308
# 文字列に変換
date_str = str(date_int)
# 日付オブジェクトに変換
date = datetime.strptime(date_str, '%Y%m%d')
print(date)
このコードを実行すると、2022-03-08 00:00:00
という結果が得られます。これは、20220308
という整数が2022年3月8日
という日付に変換されたことを示しています。
pandasでの日付変換
また、pandasのDataFrameに対しても同様の日付変換を行うことができます。以下にそのコードを示します。
import pandas as pd
# YYYYMMDD形式の日付を含むDataFrame
df = pd.DataFrame({
'date_int': [20220308, 20220309, 20220310]
})
# 日付変換
df['date'] = pd.to_datetime(df['date_int'].astype(str), format='%Y%m%d')
print(df)
このコードを実行すると、以下のような結果が得られます。
date_int date
0 20220308 2022-03-08
1 20220309 2022-03-09
2 20220310 2022-03-10
これは、date_int
列の各整数がそれぞれの日付に変換され、新たなdate
列としてDataFrameに追加されたことを示しています。
以上、PythonでYYYYMMDD形式の整数を日付に変換する方法について説明しました。この情報が皆さんのデータ処理作業に役立つことを願っています。