在pandas python中,如果字符串后面跟着/,-或*,则替换其中一部分

2024-04-20 07:47:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我对Python和stack overflow都是新手。这个平台有助于我得到我想要执行的代码。我正在pandas中处理一个数据帧,我只想替换字符串中后跟/ or - or *的一部分。示例字符串是-
MAA-BOM/MADRAS
我要替换MAA to MADRAS, BOM to BOMBAY, MAD to MADRID。所以期望的输出将是MADRAS-BOMBAY/MADRAS。我只想要MAA and BOM to be replaced while MAD in MADRAS should remain intact。我在dictionary中使用.replace(),但这并没有给我想要的输出。
非常感谢您的帮助。
提前谢谢。你知道吗


Tags: orto数据字符串代码pandasstack平台
1条回答
网友
1楼 · 发布于 2024-04-20 07:47:40

建立映射字典:

m = {'MAA' : 'MADRAS', 'BOM': 'BOMBAY', 'MAD' : 'MADRID'}

现在,在您的专栏上调用str.replace

df['Col'] = df['Col'].str.replace(r'.*?(?=[/*-])', 
                        lambda x: m.get(x.group(), None))

相关问题 更多 >