熊猫中的混合数字和字符串显示Excel中的错误

时间:2019-01-03 17:24:52

标签: python-3.x

我们在发送的表单上有一个输入字段,该字段允许潜在客户输入他们在职的员工数量。不幸的是,我无法控制表单本身,因此无法更改它。

无论如何,有时人们会输入一个特定的数字(例如“ 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的字符串中删除特殊字符?

0 个答案:

没有答案