我正在尝试将一些字符串与 pandas 数据框分开:
x = pd.DataFrame()
x['y'] = ["Hernia|Infiltration","A|Hernia|Infiltration","Infiltration|Hernia"]
x
我正在执行以下代码:
x['y'] = x['y'].replace({'|Hernia': ''},regex=True)
x['y'] = x['y'].str.replace('Hernia|', '',regex=True)
x
但是输出是错误的:
错误的输出:
y
0 |Infiltration
1 A||Infiltration
2 Infiltration|
正确/预期的输出
y
0 Infiltration
1 A|Infiltration
2 Infiltration
可以用任何字符串代替 A 和 Infiltration ,但模式是一样的。
请您参考如下方法:
这可能可以用拆分/合并更优雅地处理
x['y'].apply(lambda row: '|'.join(x for x in row.split('|') if 'Hernia'!= x))
输出:
0 Infiltration
1 A|Infiltration
2 Infiltration
