正在获取AttributeError:运行此代码时,'dict'对象没有属性'drop_duplicates',有什么办法解决此问题吗?
第一个模块界面。py
import tkinter as tk
from tkinter import filedialog
import pandas as pd
root= tk.Tk()
canvas1 = tk.Canvas(root, width = 720, height = 360, bg = 'lightsteelblue')
canvas1.pack()
def getExcel ():
global df
import_file_path = filedialog.askopenfilename()
df = pd.read_excel(import_file_path, sheet_name=None)
return df
browseButton_Excel = tk.Button(text='Import Excel File', command=getExcel, bg='green', fg='white', font=('helvetica', 12, 'bold'))
canvas1.create_window(360, 180, window=browseButton_Excel)
root.mainloop()
第二个模块
import interface
bgxp = []
data = interface.df
#data = pd.ExcelFile(r'C:\Users\us\Desktop\grauation project\Deliveries 12-3-2017.xlsx')
#data = pd.concat(pd.read_excel('Todays sheet.xlsx', sheet_name=None), ignore_index=True)
#data1 drops all dublicates from sheet
data1 = data.drop_duplicates(subset=["Ref/Lic Nr"], keep="first")
#data = interface.df
cr = pd.DataFrame(data1,columns= ['Carrier'])
rf = pd.DataFrame(data1,columns= ['Ref/Lic Nr'])
#Locks data from column
amtg = data1.loc[data1.Carrier=='AMTG', 'Ref/Lic Nr']
# without index
amtg1=(amtg.to_string(index=False, header=False))
答案 0 :(得分:0)
pd.read_excel
返回数据框或数据框的字典
当您指定sheet_name=None
时,它将读取所有工作表,因此返回的对象是{sheet_name: pd.DataFrame}
如果所有工作表共享相似的字段,一个很好的解决方案是将其转换为MultiIndexed DataFrame,在工作表中将工作表名称添加为第0个索引级别。
df = pd.concat(pd.read_excel(import_file_path, sheet_name=None))
否则,您需要遍历该字典。