我有两个数据框,df1。
JobId WorkOrderNo TradeName TradeMasterId TechnicianId Rating
0 10112 samsung10112 Plumbing 1074 NaN NaN
1 10112 samsung10112 Plumbing 1074 NaN NaN
2 10112 samsung10112 Plumbing 1074 1332.0 2.962963
295 10161 samsung10161 Carpenter 1090 NaN NaN
296 10161 samsung10161 Carpenter 1090 1337.0 3.724138
297 10161 samsung10161 Carpenter 1090 1296.0 3.526316
298 10161 samsung10161 Carpenter 1090 1296.0 3.526316
df2,
TechnicianId UserName TradeMasterId LateNight Weekends WeekDays
0 1296 ramzee rr 1090 True False True
1 1325 Arun Guna 1089 True True True
2 1326 Rajesh Thiru 1074 False False True
4 1336 RR RR 1068 False False True
现在,我想利用这两个数据框中的两个公共列来合并这两个数据框,我希望最终的数据集是这样的。
JobId WorkOrderNo TradeName TradeMasterId TechnicianId Rating LateNight Weekends Weekdays
0 10112 samsung10112 Plumbing 1074 NaN NaN False False True
1 10112 samsung10112 Plumbing 1074 NaN NaN False False True
2 10112 samsung10112 Plumbing 1074 1332.0 2.962963 False False True
295 10161 samsung10161 Carpenter 1090 NaN NaN True False True
296 10161 samsung10161 Carpenter 1090 1337.0 3.724138 True
False True
297 10161 samsung10161 Carpenter 1090 1296.0 3.526316 True
False True
298 10161 samsung10161 Carpenter 1090 1296.0 3.526316 True
False True
谁能帮帮我?
试试这个。
new_df = pd.merge(df1, df2, on=["TradeMasterId", "TechnicianId"])
你可能想用左连接。根据一个什么你的关键是你可以使用。
mergeddf = df.set_index("TechnicianId").join(df2.set_index("TechnicianId"))
检查出 pandas.Dataframe.join 文档中获取更多信息。
希望能帮到你。