我有一些字段在上游进程中有一些垃圾。我正在尝试从将垃圾附加到电子邮件地址的列中删除'\ r \ n名称:hwowneremail,dtype:object'。
report_df['Owner'].replace('\r\nName: hwowneremail, dtype: object',inplace=True)
report_df['Owner'][26]
输出:
' Jane.Doe@company.com\r\nName: hwowneremail, dtype: object'
我也尝试了以下不成功的变种:
replace('Name: hwowneremail, dtype: object', inplace=True)
replace('\\r\\nName: hwowneremail, dtype: object', inplace=True
replace(r'\r\nName: hwowneremail, dtype: object', inplace=True)
replace('\r\nName: hwowneremail, dtype: object', "", inplace=True)
replace(to_value='\r\nName: hwowneremail, dtype: object', value=' ',inplace=True)
replace('\\r\\nName: hwowneremail, dtype: object',regex=True,inplace=True)
提前感谢您的见解!
答案 0 :(得分:3)
据我记忆,Python Pandas在更换时有所改变。您应该尝试传递一个正则表达式关键字参数。
像这样;
report_df['Owner'].replace({'\r\nName: hwowneremail, dtype: object':''},regex=True)
答案 1 :(得分:0)
或者您可以使用:
report_df.Owner.str.replace(r'\r\n.*', '')
答案 2 :(得分:0)
或者有时只是确保要查找的字符/ str之前或之后没有空格(例如?):
df.replace(r'\s*\?\s*', np.nan, regex=True)
或只是确保您指定要查找的字符串:
df.replace(r'\?', np.nan, regex=True)
这两种情况:并且不要忘记
regex=True