如何用Python篩選每個人的第一筆紀錄?

更新 發佈閱讀 2 分鐘

首先,這是我們的資料

import pandas as pd

data = pd.read_excel("範例.xlsx")
raw-image

假設我們要篩選出每個員工的第一筆休假紀錄,那我們要先做排序。

依照員工身分的KEY值與休假日期做排序,讓每個人的休假日的順序都是有舊到新。

data.sort_values(by=["員工編號","休假日"],ignore_index=True,inplace=True)
raw-image

接著我們要做出能幫助我們篩選的欄位:

#在這邊我們會用data的index幫助我們辨識迴圈中的該資料是不是這個員工的第一筆資料:​

#我們先建立一個自定義函數:​
def Proc(x):
#如果index是0時(data中的第一筆資料)回傳數字1​
    if x == 0 :
        return 1
#如果index不是0:
    else :
#如果現在這一筆的員工編號,與上一筆的員工編號相同,回傳數字0​
        if data["員工編號"].values[x] == data["員工編號"].values[x-1]:
            return 0
#其它狀況,回傳數字1
        else :return 1

#利用自定義函數與map函數建立新欄位​
data["第一筆_記號"] = list(map(lambda x: Proc(x),data.index))
raw-image

接著我們再做一些整理與篩選作業,就完成囉。

#篩選第一筆休假紀錄​
data = data[data["第一筆_記號"] == 1]

#​重設index
data.reset_index(drop=True,inplace=True)

#​丟掉幫助我們篩選的欄位
data.drop(columns="第一筆_記號",inplace=True)
raw-image










留言
avatar-img
留言分享你的想法!
avatar-img
果農的沙龍
7會員
61內容數
我是果農,這裡有我的人資職涯經驗分享,與我菜鳥般的Python資料分析筆記,還有一些讀書心得,希望對大家有幫助。
果農的沙龍的其他內容
2024/08/30
如何用Python做可調整是否能重複抽獎的程式
Thumbnail
2024/08/30
如何用Python做可調整是否能重複抽獎的程式
Thumbnail
2024/08/23
如何用Python繪製彩色表格
Thumbnail
2024/08/23
如何用Python繪製彩色表格
Thumbnail
2024/08/23
如何調整成Python的日期格式
Thumbnail
2024/08/23
如何調整成Python的日期格式
Thumbnail
看更多
你可能也想看
Thumbnail
還在煩惱平凡日常該如何增添一點小驚喜嗎?全家便利商店這次聯手超萌的馬來貘,推出黑白配色的馬來貘雪糕,不僅外觀吸睛,層次豐富的雙層口味更是讓人一口接一口!本文將帶你探索馬來貘雪糕的多種創意吃法,從簡單的豆漿燕麥碗、藍莓果昔,到大人系的奇亞籽布丁下午茶,讓可愛的馬來貘陪你度過每一餐,增添生活中的小確幸!
Thumbnail
還在煩惱平凡日常該如何增添一點小驚喜嗎?全家便利商店這次聯手超萌的馬來貘,推出黑白配色的馬來貘雪糕,不僅外觀吸睛,層次豐富的雙層口味更是讓人一口接一口!本文將帶你探索馬來貘雪糕的多種創意吃法,從簡單的豆漿燕麥碗、藍莓果昔,到大人系的奇亞籽布丁下午茶,讓可愛的馬來貘陪你度過每一餐,增添生活中的小確幸!
Thumbnail
介紹如何用assign函數在Python中建立新欄位
Thumbnail
介紹如何用assign函數在Python中建立新欄位
Thumbnail
如何用Python將DataFrame中的資料擷取維新的DataFrame?
Thumbnail
如何用Python將DataFrame中的資料擷取維新的DataFrame?
Thumbnail
本文介紹瞭如何使用 Python pandas 進行資料分析,包括如何使用 corr() 函數針對數字類型的欄位進行分析,以及如何刪除不需要的欄位和取得想要的小數位數。
Thumbnail
本文介紹瞭如何使用 Python pandas 進行資料分析,包括如何使用 corr() 函數針對數字類型的欄位進行分析,以及如何刪除不需要的欄位和取得想要的小數位數。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News