熊猫:替换字符串中的子字符串

新手上路,请多包涵

我想在 icashier.alipay.com df

 url
icashier.alipay.com/catalog/2758186/detail.aspx
icashier.alipay.com/catalog/2758186/detail.aspx
icashier.alipay.com/catalog/2758186/detail.aspx
vk.com

aliexpress.com

欲望输出

aliexpress.com/catalog/2758186/detail.aspx
aliexpress.com/catalog/2758186/detail.aspx
aliexpress.com/catalog/2758186/detail.aspx
vk.com

我尝试 df['url'].replace('icashier.alipay.com', 'aliexpress.com', 'inplace=True') 但它返回 empty dataframe

原文由 NineWasps 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 363
2 个回答

使用 replacedict 替换和 regex=True

 df['url'] = df['url'].replace({'icashier.alipay.com': 'aliexpress.com'}, regex=True)
print (df)
                                          url
0  aliexpress.com/catalog/2758186/detail.aspx
1  aliexpress.com/catalog/2758186/detail.aspx
2  aliexpress.com/catalog/2758186/detail.aspx
3                                      vk.com

原文由 jezrael 发布,翻译遵循 CC BY-SA 4.0 许可协议

使用 str.replace 替换子字符串, replace 寻找完全匹配,除非你传递正则表达式模式和参数 regex=True

 In [25]:
df['url'] = df['url'].str.replace('icashier.alipay.com', 'aliexpress.com')
df['url']

Out[25]:
0    aliexpress.com/catalog/2758186/detail.aspx
1    aliexpress.com/catalog/2758186/detail.aspx
2    aliexpress.com/catalog/2758186/detail.aspx
3                                        vk.com
Name: url, dtype: object

原文由 EdChum 发布,翻译遵循 CC BY-SA 3.0 许可协议

推荐问题