我的Pandas在从.xlsx文件中读取值时出现错误。

14 浏览
0 Comments

我的Pandas在从.xlsx文件中读取值时出现错误。

我试图将一个.xlsx文件读入到一个数据框中。

在Excel中打开的.xlsx文件如下所示:

标题1 标题2 标题3
苏打 12 4
汽水 12 2
可乐 12 3

但是,我使用以下代码读取的数据框:

df = pd.read_excel("fileName.xlsx", engine='openpyxl')

结果如下所示:

标题1 标题2 标题3
苏打 0 4
汽水 0 2
可乐 0 3

有人知道为什么第二个标题中的所有值都被替换为0吗?或者有没有什么方法可以解决这个问题?我不确定,因为标准的read_csv不再支持.xlsx文件,所以我一直在使用Openpyxl版本。提前感谢!

编辑:所以xlrd也不再支持.xlsx文件(只支持.xls文件),所以我安装了一个较旧版本的xlrd,但是使用较旧版本的xlrd和使用当前版本的openpyxl得到的结果与上述相同。仍在寻求帮助...

另外,我想说的是read_csv的地方应该是read_excel。

0
0 Comments

Pandas在读取.xlsx文件时出现了值错误的问题,我遇到了类似的问题,并通过使用"converters"参数来指定列的数据类型来解决了这个问题。你可以尝试以下方法:

df = pd.read_excel("fileName.xlsx", engine='openpyxl', converters ={'Heading 2':int})

或者

df = pd.read_excel("fileName.xlsx", engine='openpyxl', converters ={'Heading 2':str})

通过指定"converters"参数,并使用字典来指定需要转换的列和对应的数据类型,可以解决Pandas在读取.xlsx文件时出现的值错误问题。其中"Heading 2"是需要转换的列名,可以根据实际情况进行修改。

0
0 Comments

问题原因:Pandas库中的read_excel函数在读取.xlsx文件时出现错误。

解决方法:使用旧版本的xlrd库来读取.xlsx文件,但这可能会存在安全漏洞。

文章内容如下:

最近,在使用Pandas库的read_excel函数读取.xlsx文件时,遇到了一些问题。根据我的理解,read_csv函数不支持.xlsx文件,但read_excel函数应该支持。然而,在最新版本的xlrd库中,只有openpyxl引擎支持.xlsx文件,而之前的标准引擎xlrd不再支持。

如果你运行的是xlrd版本1.2.0或更旧的版本,为了避免使用openpyxl引擎,可以尝试使用以下代码来读取.xlsx文件:

df = pd.read_excel("fileName.xlsx")

然而,使用旧版本的xlrd库可能会存在安全漏洞,这也是为什么.xlsx支持在最初被停止的原因。

xlrd库的作者在一个的问题中给出了更详细的解释。当我尝试使用旧版本的xlrd库时,遇到了错误信息:xlrd.biffh.XLRDError: Excel xlsx file; not supported。

非常抱歉,你是正确的,实际上xlrd不再支持.xlsx文件,因为存在安全问题。也许这个帖子可以帮助你解决问题。

通过使用xlrd库的旧版本,我们可以解决Pandas库read_excel函数读取.xlsx文件时的错误。然而,我们需要注意使用旧版本可能带来的安全漏洞。

0