我有以下資料框:
Year-Week Case Team Case Info
2022-42 540 Finance OTHER
2022-42 540 IT ACCEPTED
2022-42 480 Sales OTHER
2022-42 480 Finance CHECK CASE
2022-42 480 IT OTHER
2022-42 465 IT OTHER
2022-42 465 Sales OTHER
2022-42 310 Legal VALIDATED
2022-42 310 Marketing OTHER
如您所見,“案例”部分中有重復值,這是因為每個案例可以屬于不同的團隊,并且每個團隊可以在“案例資訊”部分中對案例進行不同的分類。
我的問題是我希望我的python代碼采用重復的“案例”案例,當它們在“案例資訊”中具有不同的值時,除“其他”以外的任何其他值都占優勢,我附上了一個例子:
Year-Week Case Team Case Info
2022-42 540 Finance ACCEPTED
2022-42 540 IT ACCEPTED
2022-42 480 Sales CHECK CASE
2022-42 480 Finance CHECK CASE
2022-42 480 IT CHECK CASE
2022-42 465 IT OTHER
2022-42 465 Sales OTHER
2022-42 310 Legal VALIDATED
2022-42 310 Marketing VALIDATED
我一直在嘗試使用以下命令:
df['Case Info'] = df.groupby('Case')['Case Info'].transform('max')
但這只會導致我用一個值替換另一個值,利用 ASCII 表中的首字母被應用的事實。話雖如此,這只完成了一半的作業,因為它只是為了一個價值而不是最后出現的“其他”。
uj5u.com熱心網友回復:
不完全是,最有效的方法,但這種方法鏈接應該作業伙伴
df.groupby('Case')['Case Info'].apply(lambda x : x.replace('OTHER',np.nan).bfill().ffill()) # This should return your wanted series
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/525447.html
標籤:Python熊猫