首页 > 解决方案 > Pandas 在使用 read_excel 时不断重复行

问题描述

read_excel()要将 xlsx 电子表格转换为数据框。它通常工作得很好,但是对于这个电子表格,当我导入它并尝试列出所有值时,df["Date"]它似乎在每个日期重复很多很多次。知道这是为什么吗?

    df = pd.read_excel("data.xlsx", sheet_name="Data")
    dates = df['Date']

结果:

    0        2014-12-22
    1        2014-12-22
    2        2014-12-22
    3        2014-12-22
    4        2014-12-22
                ...
    419532   2020-01-10
    419533   2020-01-10
    419534   2020-01-10
    419535   2020-01-10
    419536   2020-01-10

编辑:一些电子表格:

在此处输入图像描述 如您所见,日期是重复的,它们在我的电子表格中绝对不像那样。知道为什么吗?谢谢

标签: pythonexcelpandasdataframe

解决方案


pd.read_excel()除非您将其限制在有限的范围内,否则将阅读整个工作表。Excel 有许多功能可以在不更改工作表中存在的数据的情况下更改工作表的显示(过滤、隐藏行等)。因此,额外的行是存在于工作表中但已隐藏显示的类似数据。腹肌

一些迹象表明过滤器按钮中是否包含过滤符号、蓝色行号和隐藏行,如下所示。

在此处输入图像描述

检查以确保您可以看到所有数据,以便您了解工作表中的内容,而不是刚刚可见的内容。

要获得与您相同的视图,您可以使用条件过滤数据框。

df = df[df['city'] == 'CALGARY']

或多个条件:

df = df[(df['city'] == 'CALGARY') & (df['utility'] == 'Suncor')]

推荐阅读