Pandas是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。Pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。本文主要介绍一下Pandas中pandas.DataFrame.at_time和between_time方法的使用。

DataFrame.at_time(time, asof=False, axis=None)

在特定时间选择值(例如,上午9:30)。

参数

time : datetime.timestring

axis : {0或'index',1或'columns'},默认为0

版本0.24.0中的新功能。

返回

values_at_time : 与调用者类型相同

Raises

TypeError

如果索引不是 DatetimeIndex

例子,

>>> i = pd.date_range('2018-04-09', periods=4, freq='12H')
>>> ts = pd.DataFrame({'A': [1,2,3,4]}, index=i)
>>> ts
A
2018-04-09 00:00:00 1
2018-04-09 12:00:00 2
2018-04-10 00:00:00 3
2018-04-10 12:00:00 4
>>> ts.at_time('12:00')
A
2018-04-09 12:00:00 2
2018-04-10 12:00:00 4


DataFrame.between_time(start_time, end_time, include_start=True, include_end=True, axis=None)

选择一天中特定时间之间的值(例如,上午9:00-9:30)。

通过设置start_time为晚于end_time,您可以获得不在两次之间的时间。

参数:

start_time : datetime.timestring

end_time : datetime.timestring

include_start : boolean,默认为True

include_end : boolean,默认为True

axis : {0或'index',1或'columns'},默认为0

版本0.24.0中的新功能。

返回

values_between_time : 与调用者相同的类型

Raises

TypeError

如果索引不是 DatetimeIndex

例子,

>>> i = pd.date_range('2018-04-09', periods=4, freq='1D20min')
>>> ts = pd.DataFrame({'A': [1,2,3,4]}, index=i)
>>> ts
A
2018-04-09 00:00:00 1
2018-04-10 00:20:00 2
2018-04-11 00:40:00 3
2018-04-12 01:00:00 4

>>> ts.between_time('0:15', '0:45')
A
2018-04-10 00:20:00 2
2018-04-11 00:40:00 3

通过设置晚于以下设置,您获得的时间不会介于两次之间 :start_timeend_time

>>> ts.between_time('0:45', '0:15')
A
2018-04-09 00:00:00 1
2018-04-12 01:00:00 4