python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > pandas.date_range()用法

关于pandas.date_range()的用法及说明

作者:linda公馆

这篇文章主要介绍了关于pandas.date_range()的用法及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

pandas.date_range()用法

date_range()是pandas中常用的函数,用于生成一个固定频率的DatetimeIndex时间索引。

原型:

date_range(start=None, end=None, periods=None, freq=None, tz=None, normalize=False, name=None, closed=None, **kwargs)

常用参数为start、end、periods、freq。

还可以根据closed参数选择是否包含开始和结束时间,left包含开始时间,不包含结束时间,right与之相反。

默认同时包含开始时间和结束时间。

函数调用时至少要指定参数start、end、periods中的两个。

(1)指定起止时间

pd.date_range('20200101','20200110')

(2)指定开始时间和时间序列数量

pd.date_range('20200101',periods=10)

(3)指定结束时间和时间序列数量

pd.date_range(end='20200110',periods=10)

(4)指定开始时间、时间序列数量和频率

pd.date_range(start='20200101',periods=5,freq='2D')

(5)指定结束时间、时间序列数量和频率

pd.date_range(end='20200110',periods=5,freq='2D')

(6)指定起止时间和closed参数

pd.date_range('20200101','20200110',closed='left')

(7)时间序列做为索引,生成Series一维数组

dates = pd.date_range(start='20200101',periods=5,freq='2D')
pd.Series(range(10,20,2),index=dates)

(8)时间序列做行索引,生成DateFrame二维数组

dates = pd.date_range(start='20200101',periods=5,freq='2D')
pd.DataFrame(np.random.randn(5,5), index=dates, columns=list('ABCDE'))

pandas.date_range()详解

官方文档

pandas.date_range(start=None, end=None, periods=None, freq=None, tz=None, normalize=False, name=None, closed=None, **kwargs)

返回一个固定频率的DatetimeIndex

参数

参数数据类型意义
startstr or datetime-like, optional生成日期的左侧边界
endstr or datetime-like, optional生成日期的右侧边界
periodsinteger, optional生成周期
freqstr or DateOffset, default ‘D’可以有多种比如‘5H’,频率别名参见链接
tzstr or tzinfo, optional返回本地化的DatetimeIndex的时区名,例如’Asia/Hong_Kong’
normalizebool, default False生成日期之前,将开始/结束时间初始化为午夜
namestr, default None产生的DatetimeIndex的名字
closed{None, ‘left’, ‘right’}, optional使区间相对于给定频率左闭合、右闭合、双向闭合(默认的None)
**kwargs 为了兼容性,对结果没有影响

案例

>>> 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')
>>> 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')

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文