pandas.date_range()用法

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

pandas.date_range()用法

linda公馆   2022-09-28 我要评论

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。

  • start:指定生成时间序列的开始时间
  • end:指定生成时间序列的结束时间
  • periods:指定生成时间序列的数量
  • freq:生成频率,默认‘D’,可以是’H’、‘D’、‘M’、‘5H’、‘10D’、…

还可以根据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')

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

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们