パンダ: エポックを日付/時刻に変換する方法
次の基本構文を使用して、時間をパンダで認識可能な日付/時刻に変換できます。
df[' date_column '] = pd. to_datetime (df[' date_column '], unit=' s ')
たとえば、この構文はエポック時間1655439422をパンダの日時2022-06-17 04:17:02に変換します。
この形式は、長い数字の文字列ではなく、日付と時刻として認識しやすいです。
次の例は、この構文を実際に使用する方法を示しています。
例: Pandas でエポックを日付と時刻に変換する
特定の日付と時刻における特定の製品の総売上高に関する情報を含む次のパンダ データフレームがあるとします。
import pandas as pd #createDataFrame df = pd. DataFrame ({' date ': ['1655439422', '1655638422', '1664799422', '1668439411', '1669939422', '1669993948'], ' sales ': [120, 150, 224, 290, 340, 184]}) #view DataFrame print (df) dirty dates 0 1655439422 120 1 1655638422 150 2 1664799422 224 3 1668439411 290 4 1669939422 340 5 1669993948 184
現在、日付列の値はエポックタイムでフォーマットされています。
エポック時間をパンダの日時形式に変換するには、次の構文を使用できます。
#convert values in date column from epoch to datetime df[' date '] = pd. to_datetime (df[' date '], unit=' s ') #view updated DataFrame print (df) dirty date 0 2022-06-17 04:17:02 120 1 2022-06-19 11:33:42 150 2 2022-10-03 12:17:02 224 3 2022-11-14 15:23:31 290 4 2022-12-02 00:03:42 340 5 2022-12-02 15:12:28 184
日付列の値が認識可能な日付と時刻になっていることに注意してください。
ほとんどの時間は、1970 年 1 月 1 日以降の秒数として保存されていることに注意してください。
to_datetime()関数でunit=’s’引数を使用することで、1970 年 1 月 1 日からの秒数を計算してエポックを日時に変換するようパンダに明示的に指示します。
注: pandas to_datetime()関数の完全なドキュメントはここで見つけることができます。
追加リソース
次のチュートリアルでは、パンダで他の一般的なタスクを実行する方法を説明します。
Pandasでタイムスタンプを日付/時刻に変換する方法
Pandas で DateTime を日付に変換する方法
PandasでDateTimeを文字列に変換する方法