使用其他数据框过滤熊猫数据框值

时间:2019-08-07 16:32:00

标签: python pandas dataframe

我有两个数据框,其中的列包含类似值

df1:
    Col     Actual
    SA~all  all
    SA~bme  beyond media engagers
    SA~bsv  beyond site visitors
    SA~blk  blink
    SA~beng brand.com media engagers
    SA~by   buy
    SA~cs   choose
    SA~tgm  gen-targeted mass

和另一个数据框

df2:
Name
CN~QLED8KLOPromotion_PD~1200x628PPLProspecting_MK~es_CH~soc_MD~c_AD~ss1x1_DT~cross_FM~sban_PB~fcbk_SZ~1200x628_RT~cpc_TG~bhv_SA~tgm_VV~dc_IT~soc_TS~IPES_FF~None _PH~laun_MK~es_YQ~19q2_BS~im_PR~tv_SB~brand_OB~awa_PK~CTR_FS~lo_CP~
CN~QLED8KLOPromotion_PD~1200x628PPLProspecting_MK~es_CH~soc_MD~c_AD~ss1x1_DT~cross_FM~sban_PB~fcbk_SZ~1200x628_RT~cpc_TG~bhv_SA~tgm_VV~dc_IT~soc_TS~IPES_FF~None _PH~laun_MK~es_YQ~19q2_BS~im_PR~tv_SB~brand_OB~awa_PK~CTR_FS~lo_CP~
CN~QLED8KLOPromotion_PD~1200x628PPLProspecting_MK~es_CH~soc_MD~c_AD~ss1x1_DT~cross_FM~sban_PB~fcbk_SZ~1200x628_RT~cpc_TG~bhv_SA~tgm_VV~dc_IT~soc_TS~IPES_FF~None _PH~laun_MK~es_YQ~19q2_BS~im_PR~tv_SB~brand_OB~awa_PK~CTR_FS~lo_CP~
CN~QLED8KLOPromotion_PD~1200x628PPLProspecting_MK~es_CH~soc_MD~c_AD~ss1x1_DT~cross_FM~sban_PB~fcbk_SZ~1200x628_RT~cpc_TG~bhv_SA~tgm_VV~dc_IT~soc_TS~IPES_FF~None _PH~laun_MK~es_YQ~19q2_BS~im_PR~tv_SB~brand_OB~awa_PK~CTR_FS~lo_CP~
CN~QLED8KLOPromotion_PD~1200x628PPLProspecting_MK~es_CH~soc_MD~c_AD~ss1x1_DT~cross_FM~sban_PB~fcbk_SZ~1200x628_RT~cpc_TG~bhv_SA~tgm_VV~dc_IT~soc_TS~IPES_FF~None _PH~laun_MK~es_YQ~19q2_BS~im_PR~tv_SB~brand_OB~awa_PK~CTR_FS~lo_CP~
CN~QLED8KLOPromotion_PD~1200x628PPLProspecting_MK~es_CH~soc_MD~c_AD~ss1x1_DT~cross_FM~sban_PB~fcbk_SZ~1200x628_RT~cpc_TG~bhv_SA~tgm_VV~dc_IT~soc_TS~IPES_FF~None _PH~laun_MK~es_YQ~19q2_BS~im_PR~tv_SB~brand_OB~awa_PK~CTR_FS~lo_CP~
CN~QLED8KLOPromotion_PD~1200x628PPLProspecting_MK~es_CH~soc_MD~c_AD~ss1x1_DT~cross_FM~sban_PB~fcbk_SZ~1200x628_RT~cpc_TG~bhv_SA~tgm_VV~dc_IT~soc_TS~IPES_FF~None _PH~laun_MK~es_YQ~19q2_BS~im_PR~tv_SB~brand_OB~awa_PK~CTR_FS~lo_CP~
CN~QLED8KLOPromotion_PD~1200x628PPLProspecting_MK~es_CH~soc_MD~c_AD~ss1x1_DT~cross_FM~sban_PB~fcbk_SZ~1200x628_RT~cpc_TG~bhv_SA~tgm_VV~dc_IT~soc_TS~IPES_FF~None _PH~laun_MK~es_YQ~19q2_BS~im_PR~tv_SB~brand_OB~awa_PK~CTR_FS~lo_CP~
CN~QLED8KLOPromotion_PD~1200x628PPLProspecting_MK~es_CH~soc_MD~c_AD~ss1x1_DT~cross_FM~sban_PB~fcbk_SZ~1200x628_RT~cpc_TG~bhv_SA~tgm_VV~dc_IT~soc_TS~IPES_FF~None _PH~laun_MK~es_YQ~19q2_BS~im_PR~tv_SB~brand_OB~awa_PK~CTR_FS~lo_CP~

我正在寻找一种方法来查找包含df1值的行,并在df2中添加一个包含df1['Actual']列中的值的新列。

有可能吗?我尝试使用numpy select,但我认为它无法正常工作。

1 个答案:

答案 0 :(得分:0)

我不确定这是否是“包含df1值”的意思,但是现在我假设您的意思是df2中的Name列包含{{1中的一个字符串(即具有子字符串) }}列中,然后,将df1中相应的Col值添加到df2中的另一列中

一种方法是使用Actual

df.apply

也许有一种更快的方法,但是可以根据需要调整df.apply

让我知道这是否回答了您的问题。