Pandas apply函式 計算日期相減

2022-09-24 05:06:08 字數 734 閱讀 9927

平時我們會經常用到日期的計算,比如要計算兩個日期的間隔,比如下面的一組關於 wbs 起止日期的資料:

wbs date_from date_to

job1 2019-04-01 2019-05-01

job2 2019-04-07 2019-05-17

job3 2019-05-16 2019-05-31

job4 2019-05-20 2019-06-11

假定要計算起止日期間隔的天數。比較簡單的方法就是兩列相減(datetime 型別):

import pandas as pd

import datetime as dt

wbs =

df = pd.dataframe(wbs)

wbs date_from date_to elapsed

job1 2019-04-01 2019-05-01 30 days

job2 2019-04-07 2019-05-17 40 days

job3 2019-05-16 2019-05-31 15 days

job4 2019-05-20 2019-06-11 22 days

日期間隔已經計算出來,但後面帶有乙個單位 days,這是因為兩個 datetime 型別相減,得到的資料型別是 timedelta64,如果只要數字,還需要使用 timedelta 的 days 屬性轉換一下。

pandas apply函式的應用

舉例 一張表裡,兩個日期對應的列 receivedtime publishedtime 之間相差的天數。表樣式如下 首先我們先定義兩個日期間求天數的函式 def caltime date1,date2 y m d為日期格式,其中的 可以用其他代替或者不寫,但是要統一,同理後面的時分秒也一樣 可以只計...

pandas apply傳參和返回方式

估計也就自己能看懂 只傳入乙個整數迭代不了不知道為什麼?def fliter label input a,b a b context 只有context為dataframe格式 return context 只返回dataframe格式本身的資料 只返回context就可以 ab外界傳入可以直接在外...

用函式計算工齡 使用DATEDIF函式計算員工工齡

計算員工的工齡是人力資源管理工作中經常要做的一項工作。如下圖,在c5單元格輸入公式 datedif b3,c3,y 可計算出員工的入職整年數。datedif函式是乙個隱藏函式,沒有函式幫助資訊,在公式記憶列表中也不出現。該函式有三個引數,可以這樣來理解 datedif 查詢日期,截止日期,統計引數 ...