熊猫在2个数据框之间找到共同的匹配项

时间:2018-07-07 19:38:21

标签: python pandas

我有2个数据帧,我想基于列(tld)查找常见的匹配项,一旦找到匹配项,我想将列匹配项更新为True。 如何更新目标数据框中的列?

数据框1:来源

   uuid           website company_name           tld
0     1  www.facebook.com     facebook  facebook.com
1     2     www.yahoo.com    yahoo inc     yahoo.com
2     3    www.google.com       Google    google.com
3     4     www.cisco.com        Cisco     cisco.com

数据框2:目标

  id  website           company_name           tld  match
0  a  www.facebook.com      facebook  facebook.com  False
1  b         www.y.com     Yahoo Inc         y.com  False
2  c         www.g.com        Google         g.com  False
3  d         www.g.com    Google Inc         g.com  False
4  e  www.facebook.com  Facebook Inc  facebook.com  False

找到匹配项:

matches = source[source.tld.isin(destination.tld.values)]

比赛

0     1  www.facebook.com     facebook  facebook.com

目的地

  id  website           company_name           tld  match
0  a  www.facebook.com      facebook  facebook.com  True
1  b         www.y.com     Yahoo Inc         y.com  False
2  c         www.g.com        Google         g.com  False
3  d         www.g.com    Google Inc         g.com  False
4  e  www.facebook.com  Facebook Inc  facebook.com  True

2 个答案:

答案 0 :(得分:1)

使用public function showAllUsers(){ $x = $this->getAllUsers(); foreach($x as $data){ echo "<tr>"; echo "<th>" . implode("</th><th>", $data) . "</th>"; echo "</tr>"; } } 更新

isin

答案 1 :(得分:0)

这将实现您想要的:

destination["match"] = destination["tld"].isin(source.tld)