pd.read_excel(“ file.xlsx”)不会创建“ DataFrame”,但会创建“ OrderedDict”

时间:2019-01-24 17:10:15

标签: python excel python-3.x pandas

我目前正在使用熊猫进行数据科学的项目。我使用Spyder作为IDE。但是,在安装并测试了VSCode之后,我的代码遇到了问题,因为熊猫似乎无法像以前那样工作。

我正在根据Excel文件创建一个DataFrame,目前仅使用它的一个示例(出于测试目的)。

import pandas as pd

data = pd.read_excel("Input.xlsx", sheet_name=None)
sample = data.sample(n=20, random_state=1).reset_index()

但是,我的数据变量现在的类型为“ OrderedDict”,而不是“ DataFrame”。因此,样本函数也不起作用:

AttributeError: 'collections.OrderedDict' object has no attribute 'sample'

我已经尝试卸载并重新安装熊猫,但这并没有帮助。顺便说一下,它在两个IDE中都不起作用。

问题是在我安装VSCode并尝试在其中运行代码后发生的。有任何想法吗?

1 个答案:

答案 0 :(得分:3)

sheet_name=None表示您想要数据框字典,字典中的每个项目代表一个不同的工作表。

如果工作簿中只有一个工作表,请不要指定sheet_name

或者,如果您有多个工作表,并且只想读一个,请明确指定它,例如sheet_name='my_sheet_name'

documentation列出了以下选项:

  Defaults to 0   |                        1st sheet as a DataFrame
              1   |                        2nd sheet as a DataFrame
       "Sheet1"   |                        1st sheet as a DataFrame
 [0,1,"Sheet5"]   |    1st, 2nd & 5th sheet as a dict of DataFrames
           None   |        All sheets as a dictionary of DataFrames