熊猫数据框和Excel

时间:2019-05-27 16:57:21

标签: python excel pandas

我有一个具有2个表的xdb。 我正在使用pandas数据框使用for循环将表数据导出到Excel。 这里的问题是当我导出到excel时仅找到table2输出。

所需的输出将是一个具有工作表名称table1和table1内容的excel工作簿。同样,table2的另一张纸及其内容。

我没有在python中使用很多excel函数。

file = filedialog.askopenfilename()
conn=sqlite3.connect(file)
cur = conn.cursor()
cur.execute("SELECT name FROM sqlite_master WHERE type='table'")
data=cur.fetchall()
listbox.insert(END,*data)

file1 = filedialog.askopenfilename()
conn1=sqlite3.connect(file1)
cur1 = conn1.cursor()
cur1.execute("SELECT name FROM sqlite_master WHERE type='table'")

value=[listbox.get(i) for i in listbox.curselection()]
for item in value:

    df=pd.read_sql_query("SELECT * from %s" %item,conn)
    df=df.agg(['count','min','max','mean']).T
    df.columns = ['count_x','min_x','max_x','mean_x']
    df1=pd.read_sql_query("SELECT * from %s" %item,conn1)
    df1=df1.agg(['count','min','max','mean']).T
    df1.columns = ['count_y','min_y','max_y','mean_y']
    df_3=pd.concat([df,df1], axis=1,join='inner')
    df_3['Count Mismatch'] = df_3['count_x'] == df_3['count_y']
    df_3['Average Mismatch'] = df_3['mean_x'] == df_3['mean_y']
    df_3.to_excel('Validation_results.xlsx')

1 个答案:

答案 0 :(得分:0)

您好,您可以使用XlsWriter模块

下面的示例链接。

https://xlsxwriter.readthedocs.io/example_pandas_multiple.html