[英]How can I make Python recognize an asterisk in a cell of my DataFrame?
所以,我有一个 DataFrame 在某些单元格中显示星号而不是数字。 我想构建一个 function 来发现单元格中的星号并将它们替换为 0。这就是我在想的:
def clean(row):
if 's' in str(row):
return re.sub(r's', '', str(row))
elif '*' in str(row):
return re.sub('*','' , str(row))
else:
return row
但很明显,我需要一些表达式来转义“*”并让 Python 将其识别为我想要替换的 object。 这里对 function 感兴趣的部分当然是“elif”。 在此先感谢您的帮助。
你正在寻找反斜杠。
\ 反斜杠,关闭下一个字符的特殊含义。
import re
def clean(row):
if 's' in str(row):
return re.sub(r's', '', str(row))
elif '*' in str(row):
return re.sub(r'\*', '', str(row))
else:
return row
row = "ij*efs"
print(row, clean(row))
如果你想替换 Dataframe 中的每个星号,你可以使用df.replace()
方法。
df.replace(to_replace=r'\*', value='', regex=True)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.