【发布时间】:2016-05-05 07:25:32
【问题描述】:
我有一个 pandas 数据框,我想在下午 12 点多或少于 12 点的时间对其进行子集化。首先,我将字符串 datetime 转换为 pandas 中的 datetime[64]ns 对象。
segments_data['time'] = pd.to_datetime((segments_data['time']))
然后我将时间、日期、月份、年份和星期几分开,如下所示。
import datetime as dt
segments_data['date'] = segments_data.time.dt.date
segments_data['year'] = segments_data.time.dt.year
segments_data['month'] = segments_data.time.dt.month
segments_data['dayofweek'] = segments_data.time.dt.dayofweek
segments_data['time'] = segments_data.time.dt.time
我的时间列如下所示。
segments_data['time']
Out[1906]:
07:43:00
07:52:00
08:00:00
08:42:00
09:18:00
09:18:00
09:18:00
09:23:00
12:32:00
12:43:00
12:55:00
Name: time, dtype: object
现在我想对时间大于 12 点且时间小于 12 点的数据帧进行子集化。
segments_data.time[segments_data['time'] < 12:00:00]
它不起作用,因为time 是string object。
【问题讨论】: