【问题标题】:How to read the data with special characters in xlsx file using pandas dataframe?如何使用 pandas 数据框读取 xlsx 文件中带有特殊字符的数据?
【发布时间】:2020-01-18 04:15:14
【问题描述】:

我想读取pandas数据框中的xlsx文件,对数据进行一些操作。我可以使用以下命令读取文件:

df = pd.read_excel('file.xlsx')

但是当我尝试对数据执行一些操作时,我收到以下错误:

ValueError: could not convert string to float:''disc abc r14jt mt cxp902 5 r2eu fail''

我该如何解决这个问题。我已经尝试了 encoding='utf-8' 但我也收到了错误。

实际上我有一个 xlsx 文件“original.xlsx”,我正在过滤该文件中的一些数据并使用以下命令将该数据保存为“file.xlsx”:

original.to_excel("file.xlsx",index=False,header=['a','b','c'],engine='xlsxwriter')

现在,当我尝试读取“file.xlsx”文件并对其执行一些操作时,我收到了该错误。我保存文件或读取文件的方式有什么问题吗?

【问题讨论】:

标签: python python-3.x pandas xlsx


【解决方案1】:
xl_file = pd.ExcelFile(file_name)

dfs = {sheet_name: xl_file.parse(sheet_name) 
      for sheet_name in xl_file.sheet_names}

【讨论】:

    【解决方案2】:

    你可以试试:

    import pandas as pd
    df = pd.read_excel('file.xlsx', encoding='latin1')
    

    【讨论】:

      【解决方案3】:

      如果一列 float 写为 a="3.300,144" 你应该执行以下操作:

      a = a.replace(".", "")
      
      a = a.replace(",", ".")
      
      float(a)
      

      输出a

      33300.144
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-01-29
        • 1970-01-01
        • 1970-01-01
        • 2011-06-09
        • 1970-01-01
        • 1970-01-01
        • 2013-11-14
        • 1970-01-01
        相关资源
        最近更新 更多