我有多个数据帧,示例数据:
df1:
user_id username firstname lastname
123 abc abc abc
456 def def def
789 ghi ghi ghi
df2:
user_id username firstname lastname
111 xyz xyz xyz
456 def def def
234 mnp mnp mnp
df3:
user_id username firstname lastname
789 ghi ghi ghi
456 def def def
222 uwv uwv uwv
我想连接这些数据帧,删除重复的行,并通过添加更多列来跟踪行的来源。所需输出:
df1:
user_id username firstname lastname df1 df2 df3
123 abc abc abc 1 0 0
456 def def def 1 1 1
789 ghi ghi ghi 1 0 1
111 xyz xyz xyz 0 1 0
234 mnp mnp mnp 0 1 0
222 uwv uwv uwv 0 0 1
我可以使用以下命令串联执行第一步:
pd.concat([df1, df2, df3]).drop_duplicates('user_id').reset_index(drop=True)
如何执行最后一步(制作原点列)?我不知道如何在没有forloop的情况下做到这一点,这对于大数据帧是不切实际的。谢谢
BIG阳
千巷猫影
相关分类