Pandas 日期功能

2021-10-23 02:59:41 字數 2543 閱讀 7991

日期功能擴充套件了時間序列,在財務資料分析中起主要作用。在處理日期資料的同時,我們經常會遇到以下情況 -

通過指定週期和頻率,使用date.range()函式就可以建立日期序列。 預設情況下,範圍的頻率是天。參考以下示例** -

import pandas as pd

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

print(datelist)

執行上面示例**,得到以下結果 -

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)

執行上面示例**,得到以下結果 -

datetimeindex(['2020-11-30', '2020-12-31', '2021-01-31', '2021-02-28',

'2021-03-31'],

dtype='datetime64[ns]', freq='m')

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

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的預設頻率是工作日。參考以下示例** -

import pandas as pd

start = pd.datetime(2017, 11, 1)

end = pd.datetime(2017, 11, 5)

dates = pd.date_range(start, end)

print(dates)

執行上面示例**,得到以下結果 -

datetimeindex(['2017-11-01', '2017-11-02', '2017-11-03', '2017-11-04',

'2017-11-05'],

dtype='datetime64[ns]', freq='d')

大量的字串別名被賦予常用的時間序列頻率。我們把這些別名稱為偏移別名。

別名描述說明

b工作日頻率

bqs商務季度開始頻率

d日曆/自然日頻率

a年度(年)結束頻率

w每週頻率

ba商務年底結束

m月結束頻率

bas商務年度開始頻率

sm半月結束頻率

bh商務時間頻率

sm半月結束頻率

bh商務時間頻率

bm商務月結束頻率

h小時頻率

ms月起始頻率

t, min分鐘的頻率

smssms半開始頻率

s秒頻率

bms商務月開始頻率

l, ms毫秒

q季度結束頻率

u, us微秒

bq商務季度結束頻率

n納秒

bq商務季度結束頻率

qs季度開始頻率

pandas 日期比較大小 Pandas日期功能

日期功能擴充套件了時間序列,在財務資料分析中起主要作用。在處理日期資料的同時,我們經常會遇到以下情況 生成日期序列 將日期序列轉換為不同的頻率 建立乙個日期範圍 通過指定週期和頻率,使用date.range 函式就可以建立日期序列。預設情況下,範圍的頻率是天。參考以下示例 import pandas...

Pandas 統計功能

dataframe 描述性統計和匯 計count 非na值的個數 describe 計算series和dataframe各列的匯 計集合 min max 計算最小值 最大值 argmin argmax 計算最小值與最大值所在的索引位置 整數 idxmin idxmax 計算最小值與最大值所在的索引標...

pandas處理日期時間

遇到的問題 乙個資料表的兩列,原始資料為float64,如20150101.0 需要求兩個日期的差值,判斷是否超過多少天 9 一些基本的知識 檢視date列有多少行的缺失值 off train date isnull sum 選擇任意行出現空值的資料 off train off train.t.is...