我退出了Python新手,也退出了堆栈溢出。这个平台对我来说很有帮助,可以获得我想要执行代码的功能。我正在处理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
。我正在使用.replace()
字典,但这并没有给我想要的输出。
非常感谢任何帮助
提前谢谢。
答案 0 :(得分:0)
构建映射字典:
m = {'MAA' : 'MADRAS', 'BOM': 'BOMBAY', 'MAD' : 'MADRID'}
现在,在您的专栏上致电str.replace
:
df['Col'] = df['Col'].str.replace(r'.*?(?=[/*-])',
lambda x: m.get(x.group(), None))