将时间戳转换为日,月,年和小时

时间:2019-08-15 19:43:48

标签: python pandas

我有以下时间戳记:

TimeStamp="20160820T210239+0100"

我想从这种格式中提取年,月,日和小时。

我正在和熊猫一起工作。有什么办法可以将此时间戳解析为我提到的格式?

亲切的问候

1 个答案:

答案 0 :(得分:3)

您应该可以使用to_datetime中的pandas功能。在您的情况下,它应自动获取日期信息,格式为:

import pandas

df = pd.DataFrame([['20160820T210239+0100']], columns=['ts'])

df['date'] =  pd.to_datetime(df['ts']) ## pandas recognizes your format

df['day'] = df['date'].dt.day
df['month'] = df['date'].dt.month
df['year'] = df['date'].dt.year

df
Out[1]:
    ts                      date                       day  month   year
0   20160820T210239+0100    2016-08-20 21:02:39+01:00   20  8       2016

鉴于问题的标签,我假设您需要熊猫来做。如果只需要纯python,则可以使用datetime

import datetime

dt = datetime.datetime.strptime('20160820T210239+0100', '%Y%m%dT%H%M%S%z')

print (dt.year, dt.month, dt.day)
Out[2]:
2016 8 20