[英]Using pandas to select customers unique to each organization
我有一個看起來像這樣的數據框:
month organization customer_id
01 ABC 001
01 ABC 001
01 ABC 002
02 XYZ 003
03 XYZ 002
06 XYZ 006
04 XYZ 007
03 DEF 004
04 DEF 005
04 MNO 004
使用 pandas,我想按每個組織分組並區分每個組織唯一的客戶數量(如果客戶訪問另一個組織,那么客戶不是唯一的)。
所需 output
organization unique_customer_count
ABC 1
XYZ 3
DEF 1
如何使用 pandas 實現這一目標? 我非常感謝您的幫助。
首先通過第一個DataFrame.drop_duplicates
刪除兩列的重復項,然后刪除每個customer_id
的重復項和每個organization
的最后計數唯一值:
df1 = (df.drop_duplicates(['organization','customer_id'])
.drop_duplicates(['customer_id'], keep=False)
.groupby('organization', sort=False)
.size()
.reset_index(name='unique_customer_count'))
print (df1)
organization unique_customer_count
0 ABC 1
1 XYZ 3
2 DEF 1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.