依托 NumPy 的 datetime64、timedelta64 等数据类型,pandas 可以处理各种时间序列数据,还能调用 scikits.timeseries 等 Python 支持库的时间序列功能。
pandas 支持 4 种常见时间概念:
-
日期时间(Datetime):带时区的日期时间,类似于标准库的 datetime.datetime 。
-
时间差(Timedelta):绝对时间周期,类似于标准库的 datetime.timedelta。
-
时间段(Timespan):在某一时点以指定频率定义的时间跨度。
-
日期偏移(Dateoffset):与日历运算对应的时间段,类似于 dateutil 的 dateutil.relativedelta.relativedelta。
| 时间概念 | 标量类 | 数组类 | Pandas 数据类型 | 主要构建方法 |
|---|---|---|---|---|
| Date times | Timestamp | DatetimeIndex | datetime64[ns] 或 datetime64[ns,tz] | to_datetime 或 date_range |
| Time deltas | Timedelta | TimedeltaIndex | timedelta64[ns] | to_timedelta 或 timedelta_range |
| Time spans | Period | PeriodIndex | period[freq] | Period 或 period_range |
| Date offsets | DateOffset | None | None | DateOffset |
pandas支持以下操作:
1. 解析时间格式字符串、np.datetime64、datetime.datetime 等多种时间序列数据。
2. 生成 DatetimeIndex、TimedeltaIndex、PeriodIndex 等定频日期与时间段序列。
3. 处理、转换带时区的日期时间数据
4. 按指定频率重采样,并转换为时间序列。
5. 用绝对或相对时间差计算日期与时间。
6. 时间序列主要是 Seriers或 Dataframe的时间型索引,可以用时间元素进行操控。
当然,Seriers或 Dataframe也可以直接把时间序列当成数据。
提供了 datetime、timedelta 、Period 扩展类型与专有用法,不过,Dateoffset 则保存为 object7. Pandas 用 NaT 表示日期时间、时间差及时间段的空值,代表了缺失日期或空日期的值,类似于浮点数的 np.nan



