给定以下数据框:

import pandas as pd
d = pd.DataFrame({'Last, First':['Jim Jrower','Chauncy Peppertooth, Jr']})
               Last, First
0               Jim Jrower
1  Chauncy Peppertooth, Jr


如果只出现在字符串的右侧而不是中间,我想删除“ Jr”。

我不能用
d['Last, First'].str.rstrip("Jr")

因为这样会从右侧去除“ J”和“ r”的所有实例。

我不能用

d['Last, First'].str.replace("Jr","")


因为如果它出现在字符串的中间,则会删除“ Jr”。
如果我最后可以摆脱那个讨厌的“ Jr”,那么我可以
 d['Last, First'].str.rstrip(", ")结束时要注意逗号。

提前致谢!

最佳答案

str.replace与正则表达式一起使用

d.iloc[:, 0].str.replace(', Jr$', '')
#                             |
#        matches end of line /

0             Jim Jrower
1    Chauncy Peppertooth
Name: Last, First, dtype: object

关于python - Pandas 只从右边替换,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44035575/

10-12 18:30