欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python pandas 時(shí)間日期的處理實(shí)現(xiàn)

 更新時(shí)間:2019年07月30日 09:32:28   作者:kingsam_  
這篇文章主要介紹了python pandas 時(shí)間日期的處理實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

摘要在上一篇文章,時(shí)間日期處理的入門里面,我們簡單介紹了一下載pandas里對(duì)時(shí)間日期的簡單操作。下面將補(bǔ)充一些常用方法。

時(shí)間日期的比較

假設(shè)我們有數(shù)據(jù)集df如下


在對(duì)時(shí)間日期進(jìn)行比較之前,要先轉(zhuǎn)一下格式。

轉(zhuǎn)格式的時(shí)候用

import pandas as pd
pd.to_datetime()

我們需要先對(duì)df中的date這一列轉(zhuǎn)為時(shí)間格式。

df['date']=pd.to_datetime(df['date'])

轉(zhuǎn)完后,我們可以輸出數(shù)據(jù)集的數(shù)據(jù)類型來看看。

print df.info()

紅框中的date這一列數(shù)據(jù)類型是datetime64[ns],下面我們就可以對(duì)日期做大小的判斷。

1.過濾某個(gè)時(shí)間片的數(shù)據(jù)&取某個(gè)時(shí)間片的數(shù)據(jù)

假設(shè),我們需要去掉數(shù)據(jù)集df中6月10號(hào)后的樣本

df[df['date']<=pd.datetime(2016,6,10)]


當(dāng)然,我們?nèi)绻枰∧硞€(gè)時(shí)間片的數(shù)據(jù),只需要取等號(hào)就可以了。

2.判斷某個(gè)日期是周幾

假如,在數(shù)據(jù)集df中,我們需要對(duì)日期添加今天是周幾的信息。我們可以這樣做:

pd.to_datetime(df['date']).dt.weekday_name

有時(shí)候,我只需要一個(gè)數(shù)字來量化周幾,只需要把改動(dòng)一下

復(fù)制代碼 代碼如下:
pd.to_datetime(df['date']).dt.weekday


3.對(duì)日期做加減法。

有時(shí)候,我們需要對(duì)日期進(jìn)行年、月、日上時(shí)間的增減。這個(gè)時(shí)候,我們可以這樣操作:

首先,我們要導(dǎo)入一個(gè)新的庫

import dateutil

1.對(duì)日期進(jìn)行增減

假如我們需要對(duì)2016年3月1號(hào)增加一天。

pd.datetime(2016,3,1)+dateutil.relativedelta.relativedelta(days=1)

如果需要日期進(jìn)行減一天,把+號(hào)改成-號(hào)就可以了。

如果需要對(duì)年或者月,甚至?xí)r分秒增減也可以。變量名分別如下:

years
months
days
hours
minutes
seconds

2.判斷增減后的日期是否為當(dāng)月最后一天&開始的一天

pd.to_datetime(pd.datetime(2016,3,1)+dateutil.relativedelta.relativedelta(day=1)).is_month_start


判斷是否為最后一天,把start改成end即可


4.判斷是否為閏年

pd.to_datetime(pd.datetime(2016,1,1).is_leap_year


以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論