[英]Python pd.read_excel - find duplicated rows in all Excel Sheets
我有一個 Excel 報告,三張紙上有幾百萬行。 我嘗試使用以下代碼導入整個 Excel 文件和所有工作表,並檢查所有工作表中的重復行並顯示所有重復行(第一行除外)。
如果我在沒有 sheet_name=None 的情況下運行代碼,它可以工作,但它只分析第一個工作表。
但是,當我添加參數 sheet_name=None 希望所有工作表都被檢查重復時 - 它不起作用,我得到一個錯誤。
import pandas as pd
df = pd.read_excel('Dup test.xlsx', sheet_name=None)
dups=df[df.duplicated()]
print(dups)
有誰知道為什么會這樣? 以及如何檢查我的 Excel 文件的每張紙中的重復行 - 請? 謝謝你。
這是錯誤:
Traceback(最近一次調用最后):文件“\eu.ad.hertz.com\userdocs\irac920\Desktop\My Files\Python\4.py”,第 4 行,在 dups=df[df.duplicated()] AttributeError : 'dict' object 沒有屬性 'duplicated'
您會收到屬性錯誤,因為當您指定 sheet_name=None 時,pandas 返回字典而不是 DataFrame。
>>> import pandas as pd
>>> df = pd.read_excel('import-order.xlsx', sheet_name=None)
>>> type(df)
<class 'dict'>
>>> df.keys()
dict_keys(['header', 'detail', 'ps_orders', 'ps_order_detail', 'Sheet5', 'Sheet7'])
>>> type(df['header'])
<class 'pandas.core.frame.DataFrame'>
>>>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.