我在pandas数据框中有一个列,其中我想要替换所有不是' US'进入'其他'。我尝试了以下代码。
dat.country.str.replace(to_replace='^(?!.*US)', value='Other', regex=True)
然而,我没有获得“其他”,而是获得了“其他”的结果。和旧的价值。例如,如果旧值是“中国”,则上面的代码会给我结果' OtherChina'
有人可以帮忙吗?
答案 0 :(得分:1)
使用前瞻与替换相结合时,请记住前瞻本身是zero-width assertions - 他们实际上匹配(消费)任何字符 - 所以,将它们与{结合起来{1}}(.+
如果要替换空值:)
.*