Pandas-如何从Python的datetime列中提取HH:MM?

问题描述

假设df看起来像

print(df)

             date_col
0 2018-07-25 11:14:00
1 2018-08-26 11:15:00
2 2018-07-29 11:17:00
#convert from string to datetime
df['date_col'] = pd.to_datetime(df['date_col'])

#to get date only
print(df['date_col'].dt.date)
0    2018-07-25
1    2018-08-26
2    2018-07-29

#to get time:
print(df['date_col'].dt.time)

0    11:14:00
1    11:15:00
2    11:17:00
#to get hour and minute
print(df['date_col'].dt.strftime('%H:%M'))
0    11:14
1    11:15
2    11:17

解决方法

我只想从我的dfHH:MM中提取。我该怎么做?

这是对中列的说明df

count                     810
unique                    691
top       2018-07-25 11:14:00
freq                        5
Name: datetime,dtype: object

字符串值包括完整的时间戳。目标是将每一行解析HH:MM为另一个df,然后循环返回并仅将其提取%Y-%m-%d到另一个df中。