代码之家  ›  专栏  ›  技术社区  ›  bernando_vialli

.map删除“我的列”中未在映射中指定的值

  •  0
  • bernando_vialli  · 技术社区  · 6 年前

    我的数据框中的一列中有各种各样的值。其中包括有限责任公司、股份有限公司、有限责任合伙人、有限责任公司

    我所要做的只是重命名一些等价但调用方式不同的值。所以我想把有限责任公司改名为有限责任公司,和合伙企业一样。

    这是我用map编写的代码:

    Leads_updated['Business_Type'] = 
    Leads_updated['Business_Type'].map({'Limited Liability Corporation': 
    'LIMITED LIABILITY CORP', 'Limited Liability Partnership':'LIMITED LIABILITY 
     PARTNER'})
    

    现在,它确实正确地更改了我想要更改的值,但是,在我的代码中还有其他我没有更改的值,例如“Corporation”,这些值现在从我的pandas dataframe列中消失了。

    为什么会这样?我该怎么解决?谢谢您!

    1 回复  |  直到 6 年前
        1
  •  1
  •   sacuL    6 年前

    map . 听起来你在找 replace 相反,如果值不在字典键中,它将保持不变:

    Leads_updated['Business_Type'].replace({'Limited Liability Corporation': 'LIMITED LIABILITY CORP', 'Limited Liability Partnership':'LIMITED LIABILITY PARTNER'})