創(chuàng)建時間序列
函數(shù)pd.date_range()
根據(jù)指定的范圍,生成時間序列DatetimeIndex,每隔元素的類型為Timestamp。該函數(shù)應(yīng)用較多。
ts = pd.date_range('2017-09-01', periods=10, freq='d', normalize=False) ts
輸出為:
DatetimeIndex(['2017-09-01', '2017-09-02', '2017-09-03', '2017-09-04', '2017-09-05', '2017-09-06', '2017-09-07', '2017-09-08', '2017-09-09', '2017-09-10'], dtype='datetime64[ns]', freq='D'
主要的入?yún)⒔馕觯?
- start: 開始時刻,可以是字符串或者datetime類型的值。默認None。
- end: 結(jié)束時刻,可以是字符串或者datetime類型的值,如果指定了長度,即periods,則可不設(shè)置。默認None。
- periods: 時序的長度,整型類型。如果有end,可不設(shè)置。默認None。
- freq: 時序生成的頻率,即每隔多少時刻生成一個時序點。字符串類型或者DateOffset類型。默認'D',即天粒度,見上述代碼輸出。
- tz: 時區(qū),字符串類型。默認None。
- normalize: bool類型,沒用過,不知道干啥的。
- name: 設(shè)置時序的名稱,字符串類型,默認None。
- closed: 是否包含兩邊的值。默認None,即兩邊都保留。
其中,freq的取值可以為如下的符號表示間隔,可以結(jié)合符號和數(shù)字,如'3d',表示每隔三天記錄一個時間點。大小寫都可以。
B business day frequency C custom business day frequency (experimental) D calendar day frequency W weekly frequency M month end frequency SM semi-month end frequency (15th and end of month) BM business month end frequency CBM custom business month end frequency MS month start frequency SMS semi-month start frequency (1st and 15th) BMS business month start frequency CBMS custom business month start frequency Q quarter end frequency BQ business quarter endfrequency QS quarter start frequency BQS business quarter start frequency A year end frequency BA business year end frequency AS year start frequency BAS business year start frequency BH business hour frequency H hourly frequency T, min minutely frequency S secondly frequency L, ms milliseconds U, us microseconds N nanoseconds
字符串轉(zhuǎn)換為時間戳
pd.to_datetime() 函數(shù)可以將表示時間的字符串轉(zhuǎn)換位TimeStamp。
pd.to_datetime('2017-09-01')
輸出為:
Timestamp('2017-09-01 00:00:00')
常用的參數(shù):
format : 用來設(shè)置字符串的格式,默認如上所示。
時間戳的加減
有時候需要將時間進行增減,可以使用類型:DateOffset。
pd.to_datetime('2017-09-01') + pd.DateOffset(days=10)
輸出為:
Timestamp('2017-09-11 00:00:00')
DateOffset常用的參數(shù):
- months ,設(shè)置月。
- days ,設(shè)置天。
- years ,設(shè)置年。
- hours ,設(shè)置小時。
- minutes ,設(shè)置分鐘。
- seconds ,設(shè)置秒。
以上可以同時設(shè)置,組合使用。
pd.to_datetime('2017-09-01') + pd.DateOffset(seconds=10, days = 10)
輸出為:
Timestamp('2017-09-11 00:00:10')
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
