Pandas DataFrame で整数を日時に変換するには:
df["DataFrame Column"] = pd.to_datetime(df["DataFrame Column"], format=specify format)
注記整数は指定された形式と一致する必要があります。
例
例1: 「YYYYMMDD」の日付形式
簡単な例から始めるには、「dates」という列に整数(YYYYMMDD形式)を含むDataFrameを作成します。
import pandas as pd
data = {"dates": [20240305, 20240316, 20240328],
"status": ["open", "open", "close"]
}
df = pd.DataFrame(data)
print(df)
print(df.dtypes)
ご覧のとおり、「dates」列の値のデータ型は整数です。

YYYYMMDD の日付形式は次のように表すことができます (さまざまな形式については次のソースを参照してください)。
format='%Y%m%d'
したがって、整数を日時に変換する完全なコードは次のようになります。
import pandas as pd
data = {"dates": [20240305, 20240316, 20240328],
"status": ["open", "open", "close"]
}
df = pd.DataFrame(data)
df["dates"] = pd.to_datetime(df["dates"], format="%Y%m%d")
print(df)
print(df.dtypes)
Python でコードを実行すると、「dates」列のデータ型が datetime になっていることがわかります。

例2: 「YYMMDD」の日付形式
ここで、日付が YYMMDD 形式であると仮定します。
import pandas as pd
data = {"dates": [240305, 240316, 240328],
"status": ["open", "open", "close"]
}
df = pd.DataFrame(data)
print(df)
print(df.dtypes)
ご覧のとおり、データ型も整数です。

したがって、YYMMDD を表すために必要な日付形式は次のようになります。
format="%y%m%d"
完全な Python コードは次のようになります。
import pandas as pd
data = {"dates": [240305, 240316, 240328],
"status": ["open", "open", "close"]
}
df = pd.DataFrame(data)
df["dates"] = pd.to_datetime(df["dates"], format="%y%m%d")
print(df)
print(df.dtypes)
前と同様に、整数は日時に変換されます。

例3: 「YYYYMMDDHHMMSS」の日付形式
その場合、指定する必要がある形式は次のとおりです。
format="%Y%m%d%H%M%S"
したがって、完全な Python コードは次のようになります。
import pandas as pd
data = {
"dates": [20240305093000, 20240316093000, 20240328200000],
"status": ["open", "open", "closed"],
}
df = pd.DataFrame(data)
df["dates"] = pd.to_datetime(df["dates"], format="%Y%m%d%H%M%S")
print(df)
print(df.dtypes)
これで、日付時刻形式が取得されます。
