我们在发送的表单上有一个输入字段,该字段允许潜在客户输入他们在职的员工数量。不幸的是,我无法控制表单本身,因此无法更改它。
无论如何,有时人们会输入一个特定的数字(例如“ 100”)。其他时候,人们会输入类似“大约50”或“ 45-50”的字样。
当我在Pandas中处理此数据然后将其导出到Excel时,Excel会将其显示为错误,因为其中有数字数据与文本数据混合在一起。
如何防止这种情况?
到目前为止,我已经尝试过:
以下功能:
def make_numeric_into_string(text):
if text.isnumeric():
return "'" + str(text)
else:
return text
并在Pandas中设置列的格式:
df['People'] = df['People'].astype(str)
我也尝试过使用Python格式化Excel列,但是我无法停止显示错误。
必须实现一种我不知道的简单方法。
更新:
我发现一个用户输入了撇号。在进行一些Google搜索后,我遇到了一些处理方法,但似乎没有一种起作用。由于这是一个人类可以读取的字符串,因此我不太在乎用户是否输入“ 50”。我只想打开Excel。所以我尝试了这个:
def add_escape_characters(text):
escape_char_list = {'-', '"'}
for escape_char in escape_char_list:
if escape_char in text:
# escape_char_index = text.index(escape_char)
escaped_text = text.replace(escape_char, '\\' + escape_char)
return escaped_text
else:
return text
但是,它仍然给我Excel中的错误。有没有一种干净的方法可以从Python的字符串中删除特殊字符?