首页 > 解决方案 > 如何基于列元素python的子字符串合并熊猫数据框

问题描述

我有两个数据框 A 和 B。数据框 A 看起来像:

col1    col2   col3
 a_low   5      6
 a_low   3      10
 a_high  4      4

数据框 B 看起来像:

col1 colB 
 a    90

现在,我想在 df A 的acol1 和 df B 的 col1 中的子字符串上合并 df A 和 B。因此,结果应该是:

col1    col2   col3  colB
 a_low   5      6     90
 a_low   3      10    90
 a_high  4      4     90

任何人都知道如何使用merge

标签: pythonpandasdataframe

解决方案


您还可以使用assign()andmerge()方法:

result=dfA.assign(col1=dfA['col1'].str.split('_').str[0]).merge(dfB).assign(col1=dfA['col1'])

现在,如果您打印result,您将获得所需的输出:

    col1    col2    col3    colB
0   a_low   5       6       90
1   a_low   3       10      90
2   a_high  4       4       90

推荐阅读