利用Python實現自動生成數據日報
前言
人生苦短,快學Python!
日報,是大部分打工人繞不過的難題。
對於管理者來說,日報是事前管理的最好抓手,可以瞭解團隊的氛圍和狀態。可對於員工來說,那就有的聊瞭。對於重復性的工作,我非常推薦大傢使用Python將其變成模塊化、自動化,幫助我們實現高效辦公。
下面我們通過一個補寫銷售日報的案例,展示一下Python自動化辦公的優勢。本文簡化瞭案例的流程。
需求詳解
朋友的需求是這樣的,他們平時的銷售數據是記錄在Excel上,匯總後會按照部門進行統計。但是今年年初時,領導突然要求寫日報,大傢寫瞭一個月發現並不檢查就沒繼續寫下去。
Excel日報數據
現在突然被要求明天交本月之前的所有日報,這相當於要補2-5月將近120天的日報,如果靠雙手復制粘貼,那估計要吐血瞭。朋友將其寫日報的相關文件都發瞭過來,發現最終日報效果如下所示。
所以需求也就是比較簡單瞭,隻需要從Excel表格中讀取每日的數據,使用Python將其處理後,再依次寫入Word文檔中,即可實現批量生成日報。
數據處理
在進行數據處理之前,要先瞭解最終需要哪些數據。如下圖所示,在目標日報Word中主要分為兩類:紅色標記的數值主要是由當日的數據、或者由它們計算後得到的數據構成;綠色標記的表格則更簡單瞭,就是近七日的數據(銷售數量、銷售金額、銷售目標、完成度)。
首先我們導入Pandas模塊進行數據處理
import pandas as pd df = pd.read_excel("日報數據.xlsx") df
輸出結果
導入數據後,接著就可以按照我們的需求,來進行數據運算瞭。數據運算主要分為兩種,一種是利用加 +、減 -、乘 *、除 / 進行數據運算,另一種是利用統計方法進行數據運算。
在交互式環境中輸入如下命令:
df["日期"] = df["日期"].apply(lambda x:x.strftime("%Y-%m-%d")) df["當日完成度"] = (df["銷售金額"]/df["銷售目標"]*100).round(1) df["累計銷售金額"] = df["銷售金額"].cumsum() df["當年完成度"] = (df["累計銷售金額"]/2200000*100).round(1) df["累計銷售金額"] = (df["累計銷售金額"]/10000).round(2) df
輸出結果:
可以看到,最終結果截圖中紅色標記的數據內容已經全部被計算出來。而綠色標記的表格則更加簡單瞭,使用Pandas模塊中的數據選取即可。
在交互式環境中輸入如下命令:
num = 10 df.iloc[num-7:num, :5]
輸出結果:
通過這種方法就可以輕松得到某一日期的過去7日內的日報數據合集。
到此這篇關於利用Python實現自動生成數據日報的文章就介紹到這瞭,更多相關Python數據日報內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Python實現光速定位並提取兩個文件的不同之處
- 使用python對excel表格處理的一些小功能
- pandas中關於apply+lambda的應用
- Python Pandas常用函數方法總結
- 教你用python從日期中獲取年、月、日和星期等30種信息