如何在 pandas 中将时间戳转换为日期/时间
您可以使用以下基本语法将 pandas DataFrame 中的时间戳转换为日期时间:
timestamp. to_pydatetime ()
以下示例展示了如何在实践中使用此功能。
示例 1:将单个时间戳转换为日期/时间
以下代码显示如何将单个时间戳转换为日期时间:
#define timestamp stamp = pd. Timestamp (' 2021-01-01 00:00:00 ') #convert timestamp to datetime stamp. to_pydatetime () datetime.datetime(2021, 1, 1, 0, 0)
示例 2:将时间戳数组转换为日期时间
以下代码显示如何将时间戳数组转换为日期时间:
#define array of timestamps stamps = pd. date_range (start=' 2020-01-01 12:00:00 ', periods= 6 , freq=' H ') #view array of timestamps stamps DatetimeIndex(['2020-01-01 12:00:00', '2020-01-01 13:00:00', '2020-01-01 14:00:00', '2020-01-01 15:00:00', '2020-01-01 16:00:00', '2020-01-01 17:00:00'], dtype='datetime64[ns]', freq='H') #convert timestamps to datetimes stamps. to_pydatetime () array([datetime.datetime(2020, 1, 1, 12, 0), datetime.datetime(2020, 1, 1, 13, 0), datetime.datetime(2020, 1, 1, 14, 0), datetime.datetime(2020, 1, 1, 15, 0), datetime.datetime(2020, 1, 1, 16, 0), datetime.datetime(2020, 1, 1, 17, 0)], dtype=object)
示例 3:将 Pandas 的时间戳列转换为日期时间
以下代码显示如何将 pandas 时间戳列转换为日期时间:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' stamps ': pd. date_range (start=' 2020-01-01 12:00:00 ',
periods= 6 ,
freq=' H '),
' sales ': [11, 14, 25, 31, 34, 35]})
#convert column of timestamps to datetimes
df. stamps = df. stamps . apply (lambda x: x.date ())
#view DataFrame
df
dirty stamps
0 2020-01-01 11
1 2020-01-01 14
2 2020-01-01 25
3 2020-01-01 31
4 2020-01-01 34
5 2020-01-01 35
其他资源
如何将 DateTime 转换为 Pandas 中的日期
如何将 Pandas 中的列转换为日期时间
如何按日期对 Pandas DataFrame 进行排序