創(chuàng)建時(shí)間序列
函數(shù)pd.date_range()
根據(jù)指定的范圍,生成時(shí)間序列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: 開始時(shí)刻,可以是字符串或者datetime類型的值。默認(rèn)None。
- end: 結(jié)束時(shí)刻,可以是字符串或者datetime類型的值,如果指定了長(zhǎng)度,即periods,則可不設(shè)置。默認(rèn)None。
- periods: 時(shí)序的長(zhǎng)度,整型類型。如果有end,可不設(shè)置。默認(rèn)None。
- freq: 時(shí)序生成的頻率,即每隔多少時(shí)刻生成一個(gè)時(shí)序點(diǎn)。字符串類型或者DateOffset類型。默認(rèn)'D',即天粒度,見上述代碼輸出。
- tz: 時(shí)區(qū),字符串類型。默認(rèn)None。
- normalize: bool類型,沒(méi)用過(guò),不知道干啥的。
- name: 設(shè)置時(shí)序的名稱,字符串類型,默認(rèn)None。
- closed: 是否包含兩邊的值。默認(rèn)None,即兩邊都保留。
其中,freq的取值可以為如下的符號(hào)表示間隔,可以結(jié)合符號(hào)和數(shù)字,如'3d',表示每隔三天記錄一個(gè)時(shí)間點(diǎn)。大小寫都可以。
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)換為時(shí)間戳
pd.to_datetime() 函數(shù)可以將表示時(shí)間的字符串轉(zhuǎn)換位TimeStamp。
pd.to_datetime('2017-09-01')
輸出為:
Timestamp('2017-09-01 00:00:00')
常用的參數(shù):
format : 用來(lái)設(shè)置字符串的格式,默認(rèn)如上所示。
時(shí)間戳的加減
有時(shí)候需要將時(shí)間進(jìn)行增減,可以使用類型: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è)置小時(shí)。
- minutes ,設(shè)置分鐘。
- seconds ,設(shè)置秒。
以上可以同時(shí)設(shè)置,組合使用。
pd.to_datetime('2017-09-01') + pd.DateOffset(seconds=10, days = 10)
輸出為:
Timestamp('2017-09-11 00:00:10')
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

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