pandas date_range函数

作者: 冯正_566c | 来源:发表于2019-07-03 11:12 被阅读0次
pandas.date_range(start=None, end=None, periods=None, 
freq=None, tz=None, normalize=False, name=None, closed=None, **kwargs)

:param start: 开始时间 str or datetime-like 
:param end: 结束时间 str or datetime-like 
:param periods: 要生成的周期数
:param freq: 频率  str or DateOffset
:param tz: str or tzinfo 返回本地化DatetimeIndex的时区名称,
例如“Asia / Hong_Kong”
:param normalize: bool 默认为False 在生成日期范围之前将开始/结束日期标准化为午夜
:param name: str 生成的DatetimeIndex的名称
:param closed: {None, ‘left’, ‘right’} 给定时间区间的闭合
:return:时间序列 DatetimeIndex

生成时间序列
>>> pd.date_range(start='1/1/2018', end='1/08/2018')
DatetimeIndex(['2018-01-01', '2018-01-02', '2018-01-03', '2018-01-04',
               '2018-01-05', '2018-01-06', '2018-01-07', '2018-01-08'],
              dtype='datetime64[ns]', freq='D')
指定start和periods, periods为期间数
>>> pd.date_range(start='1/1/2018', periods=8)
DatetimeIndex(['2018-01-01', '2018-01-02', '2018-01-03', '2018-01-04',
               '2018-01-05', '2018-01-06', '2018-01-07', '2018-01-08'],
              dtype='datetime64[ns]', freq='D')
指定start, end, and periods;
>>> pd.date_range(start='2019-01-01', end='2019-07-03', periods=10)
DatetimeIndex(['2019-01-01 00:00:00', '2019-01-21 08:00:00',
               '2019-02-10 16:00:00', '2019-03-03 00:00:00',
               '2019-03-23 08:00:00', '2019-04-12 16:00:00',
               '2019-05-03 00:00:00', '2019-05-23 08:00:00',
               '2019-06-12 16:00:00', '2019-07-03 00:00:00'],
              dtype='datetime64[ns]', freq=None)

指定freq频率
pd.date_range(start='2019-01-01', end='2019-07-03',  freq='M')
DatetimeIndex(['2019-01-31', '2019-02-28',   
              '2019-03-31', '2019-04-30',
              '2019-05-31', '2019-06-30'],
              dtype='datetime64[ns]', freq='M')

指定tz设置时区
>>> pd.date_range(start='1/1/2018', periods=5, tz='Asia/Tokyo')
DatetimeIndex(['2018-01-01 00:00:00+09:00', '2018-01-02 00:00:00+09:00',
               '2018-01-03 00:00:00+09:00', '2018-01-04 00:00:00+09:00',
               '2018-01-05 00:00:00+09:00'],
              dtype='datetime64[ns, Asia/Tokyo]', freq='D')

使用closed='left'排除结束,如果它落在界上
>>> pd.date_range(start='2017-01-01', end='2017-01-04', closed='left')
DatetimeIndex(['2017-01-01', '2017-01-02', '2017-01-03'],
              dtype='datetime64[ns]', freq='D')
使用closed='right'排除启动,如果它落在界上
>>> pd.date_range(start='2017-01-01', end='2017-01-04', closed='right')
DatetimeIndex(['2017-01-02', '2017-01-03', '2017-01-04'],
              dtype='datetime64[ns]', freq='D')
freq参数参考
别名 偏移量类型 说明
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 每月指定月份第一个工作日

相关文章

网友评论

    本文标题:pandas date_range函数

    本文链接:https://www.haomeiwen.com/subject/owifhctx.html