1.python中的时间序列模块,这里就不详细的说明,可以戳这个网址
2.pandas中时间序列模块
1)pandas通常用于处理成组日期,不管这些日期是DataFrame的轴索引还是列,to_datetime方法可以解析多种不同的日期表示形式。
>>>date = ['2017-6-26', '2017-6-27']
>>>pd.to_datetime(date)
DatetimeIndex(['2017-06-26', '2017-06-27'], dtype='datetime64[ns]', freq=None)
2)pandas中的时间序列基础
3)索引、选取以及子集构造
4)生成日期范围 pd.date_range
输入?pd.date_range或者是help(pd.date_range),查看帮助文档如下。
Help on function date_range in module pandas.core.indexes.datetimes:
date_range(start=None, end=None, periods=None, freq='D', tz=None, normalize=False, name=None, closed=None, **kwargs)
Return a fixed frequency DatetimeIndex, with day (calendar) as the default
frequency
Parameters
----------
start : string or datetime-like, default None
Left bound for generating dates
end : string or datetime-like, default None
Right bound for generating dates
periods : integer, default None
Number of periods to generate
freq : string or DateOffset, default 'D' (calendar daily)
Frequency strings can have multiples, e.g. '5H'
tz : string, default None
Time zone name for returning localized DatetimeIndex, for example
Asia/Hong_Kong
normalize : bool, default False
Normalize start/end dates to midnight before generating date range
name : string, default None
Name of the resulting DatetimeIndex
closed : string, default None
Make the interval closed with respect to the given frequency to
the 'left', 'right', or both sides (None)
Notes
-----
Of the three parameters: ``start``, ``end``, and ``periods``, exactly two
must be specified.
To learn more about the frequency strings, please see `this link
<http://pandas.pydata.org/pandas-docs/stable/timeseries.html#offset-aliases>`__.
Returns
-------
rng : DatetimeIndex
5) 移动(超前或滞后)数据
总结:
>>>1.datetime模块中的数据类型
- date #以公历形式存储日历日期(年,月,日)
- time #将时间存储为时,分,秒,毫秒
- datetime #存储日期和时间
- timedelta #表示两个datetime值之间的差(日、秒、毫秒)
>>>2.时间序列的基础频率
别名 | 偏移量类型 | 说明 |
D | Day | 每日历日 |
B | BusinessDay | 每工作日 |
H | Hour | 每小时 |
T/min | Minute | 每分 |
S | Second | 每秒 |
L/ms | Million | 每毫秒 |
U | Micro | 每微妙 |
M | MonthEnd | 每月最后一个日历日 |
BM | BusinessMonthEnd | 每月最后一个工作日 |
MS | MonthBegin | 每月第一个日历日 |
BMS | BusinessMonthBegin | 每月第一个工作日 |
W-MON、W-TUE… | Week | 从指定的星期几开始算起,每周 |
WOM-1MON、WOM-2MON… | WeekOfMonth | 产生每月第一、二、三、四周的星期几,例如WOM-1MON表示每月的第一个星期一 |
Q-JAN、Q-FEB… | QuarterEnd | 对于以指定月份(JAN、FEB、…、DEC)结束的年度,每季度的最后一月的最后一个日历日 |
BQ-JAN、BQ-FEB… | BusinessQuarterEnd | 对于以指定月份(JAN、FEB、…、DEC)结束的年度,每季度的最后一月的最后一个工作日 |
QS-JAN、QS-FEB… | QuarterBegin | 对于以指定月份(JAN、FEB、…、DEC)结束的年度,每季度的最后一月的第一个日历日 |
BQS-JAN、BQS-FEB… | BusinessQuarterBegin | 对于以指定月份(JAN、FEB、…、DEC)结束的年度,每季度的最后一月的第一个工作日 |
A-JAN、A-FEB… | YearEnd | 每年指定月份最后一个日历日 |
BA-JAN、BA-FEB… | BusinessYearEnd | 每年指定月份最后一个工作日 |
AS-JAN、AS-FEB… | YearBegin | 每月指定月份第一个日历日 |
BAS-JAN、BAS-FEB… | BusinessYearBegin | 每月指定月份第一个工作日 |