我正在使用 datacompy 比較 2 個 excel 文件中的數據。我想將輸出發送到一個 excel 文件(也可能是一封電子郵件,但這不是優先事項)。我怎樣才能做到這一點 ?我嘗試存儲 compare.report 的值并將其傳遞給 excel,盡管它不起作用compare = datacompy.Compare(df1,df2,join_columns=['COL_A','COL_B']) compare_rep = compare.report()使用 pd.ExcelWriter('Comparison_report.xlsx') 作為作者: compare_rep.to_excel(writer,sheet_name = 'DM',index=False)
2 回答

慕森卡
TA貢獻1806條經驗 獲得超8個贊
您正在嘗試將字符串寫入 excel 文件(使用 pd.DataFrame.to_excel() 是不可能的),因為 compare.report() 不會生成數據框。
print(type(compare_rep))
<class 'str'>

吃雞游戲
TA貢獻1829條經驗 獲得超7個贊
如果您使用的是 OpenPyxl,您可以將字符串逐行拆分為列表并將其寫入 excel。
同樣,如果您想通過電子郵件發送報告,您可以使用 SMTPLIB
import smtplib
server = smtplib.SMTP('smtp.gmail.com', 587)
#Next, log in to the server
server.login("youremailusername", "yourpassword")
#Send the mail
#compare.report() is the datacompy report string
server.sendmail("[email protected]", "[email protected]", compare.report())
添加回答
舉報
0/150
提交
取消