pandas 日期类型的 freq
2020-09-02 本文已影响0人
butters001
freq | 描述 |
---|---|
Y | 年 |
M | 月 |
D | 日(默认) |
T(MIN) | 分钟 |
S | 秒 |
L | 毫秒 |
U | 微秒 |
A-DEC | 每年指定月份的最后一个日历日 |
W-MON | 指定每月的哪个星期开始 |
WOM_2MON | 指定每个月的第几个星期(这里是第二个星期) |
Q-DEC(Q-月) | 指定月为季度末,每个季度末最后一月的最后一个日历日 |
B,(M,Q,A),S | 分别代表了工作日,(以月为频率,以季度为频率,以年为频率),最接近月初的那一天 |
B | 工作日 |
In [9]: pd.date_range("2018/01/01", "2019/01/01", freq="Y")
Out[9]: DatetimeIndex(['2018-12-31'], dtype='datetime64[ns]', freq='A-DEC')
In [10]: pd.date_range("2018/01/01", "2019/01/01", freq="M")
Out[10]:
DatetimeIndex(['2018-01-31', '2018-02-28', '2018-03-31', '2018-04-30',
'2018-05-31', '2018-06-30', '2018-07-31', '2018-08-31',
'2018-09-30', '2018-10-31', '2018-11-30', '2018-12-31'],
dtype='datetime64[ns]', freq='M')
In [13]: pd.date_range("2018/01/01", "2018/01/10", freq="D")
Out[13]:
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',
'2018-01-09', '2018-01-10'],
dtype='datetime64[ns]', freq='D')
In [16]: pd.date_range("2018/01/01 00:00:00", "2018/01/01 00:10:00", freq="T")
Out[16]:
DatetimeIndex(['2018-01-01 00:00:00', '2018-01-01 00:01:00',
'2018-01-01 00:02:00', '2018-01-01 00:03:00',
'2018-01-01 00:04:00', '2018-01-01 00:05:00',
'2018-01-01 00:06:00', '2018-01-01 00:07:00',
'2018-01-01 00:08:00', '2018-01-01 00:09:00',
'2018-01-01 00:10:00'],
dtype='datetime64[ns]', freq='T')
In [17]: pd.date_range("2018/01/01 00:00:00", "2018/01/01 00:00:10", freq="S")
Out[17]:
DatetimeIndex(['2018-01-01 00:00:00', '2018-01-01 00:00:01',
'2018-01-01 00:00:02', '2018-01-01 00:00:03',
'2018-01-01 00:00:04', '2018-01-01 00:00:05',
'2018-01-01 00:00:06', '2018-01-01 00:00:07',
'2018-01-01 00:00:08', '2018-01-01 00:00:09',
'2018-01-01 00:00:10'],
dtype='datetime64[ns]', freq='S')
In [21]: pd.date_range("2018/01/01", "2022/01/01", freq="A-OCT")
Out[21]: DatetimeIndex(['2018-10-31', '2019-10-31', '2020-10-31', '2021-10-31'], dtype='datetime64[ns]', freq='A-OCT')
In [27]: pd.date_range("2018/01/01", "2019/01/01", freq="W-MON")
Out[27]:
DatetimeIndex(['2018-01-01', '2018-01-08', '2018-01-15', '2018-01-22',
'2018-01-29', '2018-02-05', '2018-02-12', '2018-02-19',
'2018-02-26', '2018-03-05', '2018-03-12', '2018-03-19',
'2018-03-26', '2018-04-02', '2018-04-09', '2018-04-16',
'2018-04-23', '2018-04-30', '2018-05-07', '2018-05-14',
'2018-05-21', '2018-05-28', '2018-06-04', '2018-06-11',
'2018-06-18', '2018-06-25', '2018-07-02', '2018-07-09',
'2018-07-16', '2018-07-23', '2018-07-30', '2018-08-06',
'2018-08-13', '2018-08-20', '2018-08-27', '2018-09-03',
'2018-09-10', '2018-09-17', '2018-09-24', '2018-10-01',
'2018-10-08', '2018-10-15', '2018-10-22', '2018-10-29',
'2018-11-05', '2018-11-12', '2018-11-19', '2018-11-26',
'2018-12-03', '2018-12-10', '2018-12-17', '2018-12-24',
'2018-12-31'],
dtype='datetime64[ns]', freq='W-MON')
In [29]: pd.date_range("2018/01/01", "2019/01/01", freq="WOM-2MON")
Out[29]:
DatetimeIndex(['2018-01-08', '2018-02-12', '2018-03-12', '2018-04-09',
'2018-05-14', '2018-06-11', '2018-07-09', '2018-08-13',
'2018-09-10', '2018-10-08', '2018-11-12', '2018-12-10'],
dtype='datetime64[ns]', freq='WOM-2MON')
In [30]: pd.date_range("2018/01/01", "2019/01/01", freq="Q-DEC")
Out[30]: DatetimeIndex(['2018-03-31', '2018-06-30', '2018-09-30', '2018-12-31'], dtype='datetime64[ns]', freq='Q-DEC')
In [31]: pd.date_range("2018/01/01", "2019/01/01", freq="Q-OCT")
Out[31]: DatetimeIndex(['2018-01-31', '2018-04-30', '2018-07-31', '2018-10-31'], dtype='datetime64[ns]', freq='Q-OCT')
In [32]: pd.date_range("2018/01/01", "2019/01/01", freq="BAS")
Out[32]: DatetimeIndex(['2018-01-01', '2019-01-01'], dtype='datetime64[ns]', freq='BAS-JAN')
In [34]: pd.date_range("2018/01/01", "2019/01/01", freq="BQS")
Out[34]:
DatetimeIndex(['2018-01-01', '2018-04-02', '2018-07-02', '2018-10-01',
'2019-01-01'],
dtype='datetime64[ns]', freq='BQS-JAN')
In [33]: pd.date_range("2018/01/01", "2019/01/01", freq="BMS")
Out[33]:
DatetimeIndex(['2018-01-01', '2018-02-01', '2018-03-01', '2018-04-02',
'2018-05-01', '2018-06-01', '2018-07-02', '2018-08-01',
'2018-09-03', '2018-10-01', '2018-11-01', '2018-12-03',
'2019-01-01'],
dtype='datetime64[ns]', freq='BMS')
In [35]: pd.date_range("2018/01/01", "2019/02/01", freq="B")
Out[35]:
DatetimeIndex(['2018-01-01', '2018-01-02', '2018-01-03', '2018-01-04',
'2018-01-05', '2018-01-08', '2018-01-09', '2018-01-10',
'2018-01-11', '2018-01-12',
...
'2019-01-21', '2019-01-22', '2019-01-23', '2019-01-24',
'2019-01-25', '2019-01-28', '2019-01-29', '2019-01-30',
'2019-01-31', '2019-02-01'],
dtype='datetime64[ns]', length=285, freq='B')