[英]distribution of hours between a time range as datetime.time in python
[英]How to access hours in a python datetime.time column
我有一個數據框:
TRADE_DATE TICKET_TIME GATE_ENTRY_TIME GATE_EXIT_TIME
2016-09-23 18:00:27 18:02:28 18:55:35
2016-09-23 18:08:48 18:09:01 18:31:11
2016-09-23 19:05:33 19:06:33 19:41:43
2016-09-23 18:06:55 18:08:42 18:34:41
2016-09-23 10:31:35 10:32:06 10:47:27
我想通過從TICKET_TIME列中的datetime.time值中提取小時數來創建新列。
我已經嘗試過df ['HOUR'] = df ['TICKET_TIME']。dt.hour,但沒有成功:
AttributeError: Can only use .dt accessor with datetimelike values
如果使用time
s,請使用列表理解:
print (type(df.loc[0,"TICKET_TIME"]))
<class 'datetime.time'>
df['Hour'] = [x.hour for x in df['TICKET_TIME']]
替代解決方案:
df['Hour'] = pd.to_datetime(df['TICKET_TIME'].astype(str)).dt.hour
print (df)
TRADE_DATE TICKET_TIME GATE_ENTRY_TIME GATE_EXIT_TIME Hour
0 2016-09-23 18:00:27 18:02:28 18:55:35 18
1 2016-09-23 18:08:48 18:09:01 18:31:11 18
2 2016-09-23 19:05:33 19:06:33 19:41:43 19
3 2016-09-23 18:06:55 18:08:42 18:34:41 18
4 2016-09-23 10:31:35 10:32:06 10:47:27 10
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.