用python做一些excel的事情,實現數據自動化


用了一段時間的python ,發覺python這小伙確實是做自動化的一把好手,鑒於python在自動化方面的良好的能力,python在自動化測試,自動化運維,爬蟲等方面都有着良好的表現。
我們在日常工作做需要對一下交易數據的統計,利潤的計算,對於這些每天的大量重復工作,何不用python寫一下代碼,讓這些工作變成自動化,提高准學性的同時,也解放了我們的工作時間,使得我們可以把更加多的時間花在解決問題上面。

下面的以python模擬excel的一下,日常操作,提高數據處理的效率,達到自動化的效果。
    

在我們處理數據之前,我們首先需要在我們的日常后台系統上面進行數據的下載,我們何不用python 把這一步也做自動化呢,在python里面有一個叫selenium庫在瀏覽器的自動化操作方面有着這良好的表現,可以幫助我們把日常的交易數據,利潤數據自動化的下載,做到全自動化,下一篇博客里面我們會進行介紹。

第一步
#首先我們需要需要3個庫,pandas庫,numpy庫,openpyxl庫。pandas在數據整理方面強大的能力,特別是在大數據的整理方面,小數據我們當然可以通過excel來實現,numpy在數據運算方面表現優異,openpyxl庫是我們在導出到xlsx的文件時所需要用到的不然to_excel的時候可能會報錯。
import pandas as pd 
import numpy as np 
import openpyxl  

第二步
#下載了日常交易利潤數據表20180404104607.xls,和代理商之前的利潤匯總表2,公司會把代理商的分潤累積到一定程度的時候發放給代理商,這里我們取達到100元進行打開,我們首先用read_excel來讀取數據表格。
df=pd.read_excel('匯總表.xlsx',sheet_name='Sheet1') 
df_2018=pd.read_excel('20180404104607.xls')  

第三步
# 篩選利潤匯總表,得到我們需要的2列,代理商名稱和總額。
df_new=df[['代理商名稱','總額']]  

第四步
# 篩選交易數據表,我們拿到扣完0.7稅的本級利潤,並取小數點后面的兩位數。
df_2018_代理商名稱=df_2018['代理商名稱'] 
df_2018_本級利潤=round(df_2018['本級利潤(元)']*0.93,2) 
df111=pd.concat([df_2018_代理商名稱,df_2018_本級利潤],axis=1) 
# print(df111)  

第五步
# 合並交易數據,這里面的merge的功能有和excel里面的vlookup,sql里面的join功能是一樣的嗎,同時把我今日的交易利潤和歷史利潤相加。並重名名
df_result=df111.merge(df_new,on='代理商名稱') 
# print(df_result) 
dd=df_result['本級利潤(元)']+df_result['總額'] 

dd.columns=['總額']
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#我們還可以是用apply的方式進行求和,但是首先需要drop去掉字符串,不然sum的時候就會報錯
df_result=df_result.drop(['代理商名稱'],axis=1)

del df_result['代理商名稱']

df_result['求和']=df_result.apply(lambda x: x.sum(),axis=1)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第六步
#篩選交易金額大於100的列 
df_result_2=df_result['代理商名稱']   
jieguo=pd.concat([df_result_2,dd],axis=1) jieguo=jieguo[jieguo['總額']>100]

#區間取值
jj=jieguo.loc[(jieguo['利潤']>70)&(jieguo['利潤']<100)]
#重行命名列
 
        
jieguo.columns=['代理商名稱','利潤']
jieguo.rename  (columns = {'利潤': '付款金額'},inplace=True)
print(jieguo)  
#把最后的結果導出到我們所要的表格的當中。 
jieguo.to_excel('result.xlsx')
如果有更好的建議方法不足,請告之我,讓我們一起進步吧。謝謝  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM