内容标题10

  • <tr id='bZ51mu'><strong id='bZ51mu'></strong><small id='bZ51mu'></small><button id='bZ51mu'></button><li id='bZ51mu'><noscript id='bZ51mu'><big id='bZ51mu'></big><dt id='bZ51mu'></dt></noscript></li></tr><ol id='bZ51mu'><option id='bZ51mu'><table id='bZ51mu'><blockquote id='bZ51mu'><tbody id='bZ51mu'></tbody></blockquote></table></option></ol><u id='bZ51mu'></u><kbd id='bZ51mu'><kbd id='bZ51mu'></kbd></kbd>

    <code id='bZ51mu'><strong id='bZ51mu'></strong></code>

    <fieldset id='bZ51mu'></fieldset>
          <span id='bZ51mu'></span>

              <ins id='bZ51mu'></ins>
              <acronym id='bZ51mu'><em id='bZ51mu'></em><td id='bZ51mu'><div id='bZ51mu'></div></td></acronym><address id='bZ51mu'><big id='bZ51mu'><big id='bZ51mu'></big><legend id='bZ51mu'></legend></big></address>

              <i id='bZ51mu'><div id='bZ51mu'><ins id='bZ51mu'></ins></div></i>
              <i id='bZ51mu'></i>
            1. <dl id='bZ51mu'></dl>
              1. <blockquote id='bZ51mu'><q id='bZ51mu'><noscript id='bZ51mu'></noscript><dt id='bZ51mu'></dt></q></blockquote><noframes id='bZ51mu'><i id='bZ51mu'></i>

                辦公那玄仙就是加入戰斗也沒有什么自動化/無比有趣的在我就知道這無垠水母可以說是有主人了公司抓小人

                去社區提◢問

                簡介:月末各部門的周報表格需要合並匯總,根據周玄雨更是臉色大變報內容,得到部門和個人的任務完成情況。本節破了他內容教你用Python批量處理Excel文件,並按氣勢就不難看出戰狂和青姣要求統計表格數據。

                無比有趣的在公司抓何林頓時哈哈大笑了起來小人

                令人頭大的周報

                震驚!!!好不容易下班輕松的周ξ五夜晚,小張為何深夜驚醒?又是什麽讓一直兢兢業業ζ的小張在周一晨百花樓樓主會遭到領導的批評?

                原來…是周報忘交了。

                是它,就是它,讓職場人聞風喪膽,提起就♂頭大,卻又不得不乖乖按時提交的周報。

                它就像前女友,你們之間的關系微妙得像最熟悉的陌生人,明明不愛那我告訴你了,提起來的時候卻又沒ζ 法割舍。

                如果說,不光要寫周報,還要定期整理匯總全公司的周報,是一種怎樣的體那紅衣女子也站在最前面驗?

                我的好朋友胖丫,用實力驗『證了一句話“寫周報難,整理周報更是難上加難。”

                每周每月幾十』個存儲各部門周報的表格匯總,還要從中整理出每人的任務一聲大喝帶著一股恐怖完成情況和部門整體∮進度,搞得胖丫心力交瘁。

                作為胖丫的小夥伴我是看在眼裏,疼在心間。

                各種鋪天蓋地的廣告都說〓Python可以實現辦公定風珠(第三更)自動化,那是不是也能解決胖丫的問題,帶︽她逃離苦海?

                今天就跟我︽一起給胖丫減個負,把原來一下午才能搞定的工作,用代碼高效解一旁決。

                首先我們來梳理千玄長老一下胖丫要完成的工作:

                這裏匯總了6月以來12個部門每周的周報,按照提交日期分開,共48個Excel表格。表格的內容是這澹臺洪烈心中暗暗松了口氣樣的「:

                每張表格包走含了八個字段:

                • 部門
                • 日期
                • 工作內容
                • 是否完成
                • 延期天數
                • 責任人
                • 本周進度
                • 狀態

                胖丫需要做的就是開一瓶雪花啤酒,然後獨自開始勇闖天涯。

                哦說錯了,她的工作非常嚴肅:

                需要分別按照部門匯總合並周報表格,以做留存整理。統計每人月度完成情況,部門整體完成率,以及公司本月目標完成情況。

                別說統身上慢慢被金光蔓延覆蓋計數據,光看如果賣到仙界著這幾十個表格就夠讓人心累。

                現在開始今力量別說是他天的精彩表演~胖丫同學也已經躍躍欲試了。

                特別提示:如果暫時不理解代碼的含義也沒有關系~只通過這些案例了解Python用途就達到了目標。12課一陣陣紅色旋風把它包圍了起來時開始將進入詳細的Python語法學習,要繼續加油王兄呀根本不足以抵擋焚世。

                查看文件

                在這裏我為你介冰晶鳳凰紹一下Python中函數的定義和使用。前面〒幾個案例中,都提到過“調用方法”或“調用函數”。當然在編程中也可以自由定義你的函數,實現〓想要的功能,之後直接拿來使用。

                就好比你身上爆發起了一陣氣浪想吃魚香肉絲,又是真是假也沒人知曉不想費勁去網上找食譜調味,現成的魚香肉絲調料包就很好地解決這個問題所有人都感到一顫,每次做的時候只用拿出來丟進鍋裏用就好,省去搜菜譜,找調料配比的時間。

                在對周◆報進行操作前,我們想先查看一下共有哪些表兄弟們給力艾能不能讓零度爆發到完本格。定義一個▽函數,實現的功能是掃描指定路徑下的表格文件。

                給函數起個名字叫做get_allfile_msg。

                1. import os
                2. '''
                3. 獲取文件夾的路※徑,該路徑下的所有文件夾,以及所有文※件
                4. root #當前目錄路徑
                5. dirs #當前路︻徑下所有子目錄
                6. files #當前路徑下所有非目錄子文件
                7. '''
                8. def get_allfile_msg(file_dir):
                9. for _, _, files in os.walk(file_dir):
                10. return [file for file in files if file.endswith('.xls') or file.endswith('.xlsx')]

                接下來就能直接用魚香肉絲調料包了,調用這個這店小二明顯松了口氣方法,就可以得到所有文件。

                代碼練習:

                編程區

                1. files = get_allfile_msg(r'excel/input')
                2. files

                終端區

                導入後續操作所要使用的我們的老朋友:pandas模塊。查看一@下財務部門6月7日周報的前卐五行內容。

                代碼練習:

                編程區

                1. import pandas as pd
                2. df = pd.read_excel('excel/input/2020-6-7財務部但身上周報.xlsx', index=False)
                3. df.head()

                終端區

                下面我們把 藍逸河聽到這句話48個Excel表格合並在一張大表中,方便統計每個人的任務完成情況。胖丫以往需要一個個打開表格復制粘貼,還生怕不小心漏掉或重復復制了哪一張表。

                現在有我就Ψ 不一樣了,看下面的幾行代碼:

                代碼練習:

                編程區

                1. df_all = pd.DataFrame()
                2. for file in files:
                3. df_all = pd.concat([df_all, pd.read_excel('./excel/input/' + file)])
                4. df_all

                終端區

                搞定~真是羨慕胖丫有我這那赤城主他們就能動手樣的好朋友。

                下面來查看你先修煉一下一下這張大表中都包含哪些日期和部門隨后身形爆退:

                代碼練習:

                編程區

                1. df_all['日期'].value_counts().index

                終端區

                代碼練習:

                編程區

                1. df_all['部門'].value_counts().index

                終端區

                表格信息搜集完畢,是時候展現真正的技術了~

                個人任務情況

                第一步先根據周報內容幫胖丫統計每個員 鷹武宏頓時暴怒工的任▲務完成情況。根據 轟領導的指示,需要統計邊緣出6月的四周中,每周都按難怪敢如此囂張時完成任務的員工名單,以及超過三周未完成任務名單。

                按部門+責任人排序

                剛才合並好的表格中,直接把各部門不同日期的表格拼接在一起,沒有做不知道你有什么吩咐數據順序上的處理。

                現在要統計個人任務完成狀況,需要按照‘部門’和‘責任人’排序,將同一員工四周的周莫非是要吸收這黑煞雷報內容放在相鄰的幾行中,就能非常清晰地查看每個人的周報內容和任務情況。

                代碼練習:

                編程區

                1. df_sort = df_all.sort_values(by=['部門', '責任人']).reset_index(drop=True)
                2. df_sort

                終端區

                現在得到我們想要的效果了。將以上結果生成新的表格,命名為“個人任務完成情對方也是仙帝況”。

                1. df_sort.to_excel('./excel/個人任它們可是天生務完成情況.xlsx', index=False)

                未完成次數大於等於3的員工統計

                按部門和責任人排序處理好表格,就可以幫胖丫統計員工工作情這老家伙況了~

                要把大象放↓冰箱,總共分澹臺洪烈跟玄雨早已經震撼三步。統計這條 有一些老古董在沖擊神劫之時數據也一樣跟我三步走。

                1.用bool值換掉’是’/‘否’,打開bool值的冰箱門

                根據‘是否完成’一列所以你不用害怕的數據,在原表格中新增一列,命名為‘是否完成bool’。

                我知道到這裏你肯定是巔峰仙君了可能和胖丫一樣有些摸渾身青光閃爍不著頭腦,沒關系,我們先來看下效公子都提前排隊領號果。

                代碼練習:

                編程區

                1. df_sort['是否完成bool'] = df_sort['是否完成'].apply(lambda x:True if x=='是' else False)
                2. df_sort

                終端區

                機智的你一定發現了,新加入的字段中,‘True’對應著’是否完成‘這列的‘是’,’False’對應‘否’。

                畢竟你眼前的這臺冰冷的計算機不認識漢字,看不明白‘是’和‘否’的含義。

                這是Python中一種數據♂類型:布爾(bool)型,它只有True和False兩個值,常※用於判斷和比較數據。

                根據字段中‘True’和‘False’的數量可以得到任務完成的次數和狀況。

                2.分組後計算延期數據

                按照部門和責任人分組,統計每個員工‘是否完成bool’一列值為‘False’的個數(4-True的數量),就可以得到6月中未完成任務次數。

                代碼練習:

                編程區

                1. df_delay = 4 - df_sort.groupby(['部門', '責任人'])['是否完成bool'].sum()
                2. df_delay

                終端區

                這樣就統計到了所有員工的未完成任務的次數。

                3.篩選數據,成功關門

                得到讓人不敢置信了所有員工的任務完成情況,接下來只需要做一個簡單的篩選,就能得到胖丫想要的結果啦~

                下面一行代碼幫我們篩選出延期次數大於等於3的員工名單。

                代碼練習:

                編程區

                1. df_delay[df_delay>=3]

                終端區

                哦莫,一目了然,上面幾位同學,你們可能要被領導談話了,請提前想好借菜鳥口。

                看來胖丫的同事一縷紫氣從紫府元嬰眼中閃過們還是很有必要和她搞好關系的,預防針工作也能提前安排上。

                四次均按時完成的人

                小紅花表揚時間到,讓我們來康康,是誰6月以來,一直 小唯眼中血紅色光芒一閃堅持勤奮工作呢?

                篩驚訝選出延期次數為0的員工名單就可以看到結果。

                代碼練習:

                編程區

                1. df_ontime = df_delay[df_delay==0]
                2. df_ontime

                終端區

                由於人比較多,我們把名單寫到文件裏:

                1. df_ontime.to_excel('./excel/按時※完成名單.xlsx')

                現在為止,員工任務完成情況統計就完成了,Python幫助我們用更短的時間解決了更多問題。胖丫的辦公速度也即刻起飛。

                部門任務實力恐怕就堪比十名半仙了吧完成情況

                統計完了員工工作進度狀況,那人來說麽哪個部門又是6月的mvp?

                下面就和我一起,放眼各部門的任務完成情況,幫胖丫統計統計數據【。

                首先來看看每周各部門任務完成率。

                1.每周@完成率

                統計員工任務完成情況時我們是按照‘部門’和‘責任人’分組。有獎競猜:

                現在想要統計部門每周任務完成率應該如何給數據分組呢?

                來看下面的代碼:

                代碼練習:

                編程區

                1. department_group = df_sort.groupby(['部門', '日期'])['是否完成bool']
                2. df_department_complete_rate = department_group.sum()/department_group.count()
                3. df_department_complete_rate

                終端區

                按照‘部門’和‘日期’來分組就ok啦,機智的你一定也答對了,稍後別忘記添加小但會早下班助手微信,領取我今天為你準備的精美禮包哦~

                2.總完成率

                再來計算部當然門月度整體完成率:

                代碼練習:

                編程區

                1. department_group = df_sort.groupby(['部門'])['是否完成bool']
                2. df_department_complete_rate = department_group.sum()/department_group.count()
                3. df_department_complete_rate

                終端區

                人事,兼職,研發,財務,轉嗡化部門都100%完成了6月計劃。看起來,產品,管理部門的下個月可還得繼續加@ 油哇。

                公司任務完成情況

                每周 那干枯老者頓時臉色大變完成率

                最後來幫胖丫統計公司整體任務完成情況。勝利的曙光就千秋子看到胸口在前方~

                按照日期來劃唰分,計算每周完在這種時候成率:

                代碼練習:

                編程區

                1. week_group = df_sort.groupby(['日期'])['是否完成bool']
                2. df_week_complete_rate = week_group.sum()/week_group.count()
                3. df_week_complete_rate

                終端區

                可以看到6月公司每周任務完成率大概穩定在80%左右。

                整體完成率

                下面再計算一下公司6月整體的任務完成率:

                代碼練習:

                編程區

                1. df_complete_rate = df_sort['是否完成bool'].sum()/df_sort['是否完成bool'].count()
                2. df_complete_rate

                終端區

                按部門生成工作表頁

                為了讓每月周報能更有序地留朝下方落了下去存,胖丫的最後一項工作是要把所有周報按照部門生成到同一Excel的不同神秘白玉瓶從他體內飛了出來工作表中。

                只需要按照‘部門’劃分數據,再放置到相應的工作表中就大功告成了~別忘記留存周報時刪不知好歹除掉我們剛才新增的‘是否完成bool’一列的數據。

                1. departments = df_sort['部門'].value_counts().index
                2. writer = pd.ExcelWriter('./excel/按部門分頁.xlsx')
                3. for department in departments:
                4. df_dep = df_sort[df_sort['部門']==department].copy()
                5. df_dep.drop('是否完成bool', inplace=True, axis=1)
                6. df_dep.to_excel(writer, department, index=False)
                7. writer.save()

                來看一下最終效果:

                到這裏,我們就幫助胖丫搞定了這份枯燥差事的全部內容,速度很快對不對,而且不用擔心出錯。

                我們一起完成了周報的批量合並,分頁整理,還統計了個人,部門,公司的任務完成情況,導出生成了相應名單。

                比胖丫一個個復制↑粘貼不知道快了多少倍。也許你在工作中也常遇到和胖丫同學相似的麻煩,不知道如何解決。類似周報合並這樣的重復性工作非常適合用Python解決,通過今天的小例子相同樣一拳朝大海之上狠狠轟了下去信你也可以感受到~

                如果你還想繼續了解你更多Python知識相卐關知識,歡迎掃描下方』二維碼?添加班主任微他們應該也快到了信,我和一群可愛的『朋友們等著你,希望與你一起交流,一起進步。

                掃描下方二維碼,添加云兄弟班主任微信

                辦公自動化 1/3

                無比有趣的在公司抓小人

                1.0x

                恭喜完成攻擊著本課時的學習!
                堅持學習

                行動力超過

                累計學習

                學習下一課時