我正在尝试使用 python 将数据帧中的 3 列的值匹配到另一个数据帧,并从匹配的数据帧中的另一列获取值。如何遍历我的数据框以选择与其他数据框匹配的列并从我想要的列中提取值?匹配条件是列 a、b 和 c 应该是相同的值。这是我的数据框 [df1]:这是另一个 datframe[df2]:这是我想要达到的结果[df3]:
3 回答
繁花不似锦
TA贡献1851条经验 获得超4个赞
您真正想要做的是加入或合并列。根据您的要求,使用以下链接满足您的查询,另请参阅一些教程。
new_df = df2.merge(df1, on=['a','b','c'], how='inner')
# use how='inner' when you want intersection
# use how='outer' when you want union
慕尼黑8549860
TA贡献1818条经验 获得超11个赞
您也可以执行以下操作而不是合并:
dft = pd.concat([df1, df2.iloc[:, :3]])
df = df2.loc[dft[dft.duplicated()].index]
print(df)
a b c d
0 fra chi nga can
1 wal bra rsa usa
4 ita arg sen jam
添加回答
举报
0/150
提交
取消
