Pandas | 21 日期功能

日期功能擴展了時間序列,在財務數據分析中起主要做用。在處理日期數據的同時,咱們常常會遇到如下狀況 -shell

  • 生成日期序列
  • 將日期序列轉換爲不一樣的頻率

建立一個日期範圍

經過指定週期和頻率,使用date.range()函數就能夠建立日期序列。 默認狀況下,範圍的頻率是天。參考如下示例代碼 -函數

import pandas as pd

datelist = pd.date_range('2020/11/21', periods=5)
print(datelist)

輸出結果:spa

DatetimeIndex(['2020-11-21', '2020-11-22', '2020-11-23', '2020-11-24', '2020-11-25'], dtype='datetime64[ns]', freq='D')
 

更改日期頻率

import pandas as pd

datelist = pd.date_range('2020/11/21', periods=5,freq='M')
print(datelist)

輸出結果:code

DatetimeIndex(['2020-11-30', '2020-12-31', '2021-01-31', '2021-02-28', '2021-03-31'], dtype='datetime64[ns]', freq='M')
 

bdate_range()函數

bdate_range()用來表示商業日期範圍,不一樣於date_range(),它不包括星期六和星期天。blog

import pandas as pd

datelist = pd.date_range('2011/11/03', periods=5)
print(datelist)

輸出結果:字符串

DatetimeIndex(['2017-11-03', '2017-11-06', '2017-11-07', '2017-11-08', '2017-11-09'], dtype='datetime64[ns]', freq='B')
 

觀察到11月3日之後,日期跳至11月6日,不包括4日和5日(由於它們是週六和週日)。數據分析

date_rangebdate_range這樣的便利函數利用了各類頻率別名。date_range的默認頻率是日曆中的天然日,而bdate_range的默認頻率是工做日。參考如下示例代碼 -pandas

import pandas as pd

start = pd.datetime(2017, 11, 1)
end = pd.datetime(2017, 11, 5)
dates = pd.date_range(start, end)
print(dates)

輸出結果:it

DatetimeIndex(['2017-11-01', '2017-11-02', '2017-11-03', '2017-11-04', '2017-11-05'], dtype='datetime64[ns]', freq='D')
 

偏移別名

大量的字符串別名被賦予經常使用的時間序列頻率。咱們把這些別名稱爲偏移別名。io

別名 描述說明
B 工做日頻率
BQS 商務季度開始頻率
D 日曆/天然日頻率
A 年度(年)結束頻率
W 每週頻率
BA 商務年末結束
M 月結束頻率
BAS 商務年度開始頻率
SM 半月結束頻率
BH 商務時間頻率
SM 半月結束頻率
BH 商務時間頻率
BM 商務月結束頻率
H 小時頻率
MS 月起始頻率
T, min 分鐘的頻率
SMS SMS半開始頻率
S 秒頻率
BMS 商務月開始頻率
L, ms 毫秒
Q 季度結束頻率
U, us 微秒
BQ 商務季度結束頻率
N 納秒
BQ 商務季度結束頻率
QS 季度開始頻率
相關文章
相關標籤/搜索