我怎么能左连接两只大熊猫dataframes( df1,df2上的两个键() ,bla1),bla2其中的bla2关键应该何时使用,它不是空(见最后两行df1)?伪代码如果bla2不为NULL,然后再加入bla上bla2其他参加bla的bla1数据帧df1| bla1 | bla2 | a | b ||------|------|-----|-----|| 1 | | ... | ... || 2 | | ... | ... || 3 | | ... | ... || 4 | 7 | ... | ... || 5 | 8 | ... | ... |+ df2| bla | x | y | z ||-----|-----|-----|-----|| 1 | ... | ... | ... || 2 | ... | ... | ... || 3 | ... | ... | ... || 7 | ... | ... | ... || 8 | ... | ... | ... |= df3| bla1 | bla2 | a | b | x | y | z ||------|------|-----|-----|-----|-----|-----|| 1 | | ... | ... | ... | ... | ... || 2 | | ... | ... | ... | ... | ... || 3 | | ... | ... | ... | ... | ... || 5 | 7 | ... | ... | ... | ... | ... || 4 | 8 | ... | ... | ... | ... | ... |
1 回答

拉风的咖菲猫
TA贡献1995条经验 获得超2个赞
首先创建一个新列来合并两列。
df1["new_column"] = df1.bla2.fillna(df1.bla1);
然后加入两个框架并删除额外创建的列。
df3 = pd.merge(df1, df2, how="inner", left_on="new_column", right_on="bla").drop(["new_column", "bla"], axis=1)
添加回答
举报
0/150
提交
取消