最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用python匯總統(tǒng)計多張Excel

 更新時間:2020年09月22日 09:44:43   作者:python技術(shù)  
這篇文章主要介紹了利用python匯總統(tǒng)計多張Excel,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下

為什么越來越多的非程序員白領(lǐng)都開始學(xué)習(xí) Python ?他們可能并不是想要學(xué)習(xí) Python 去爬取一些網(wǎng)站從而獲得酷酷的成就感,而是工作中遇到好多數(shù)據(jù)分析處理的問題,用 Python 就可以簡單高效地解決。本文就通過一個實際的例子來給大家展示一下 Python 是如何應(yīng)用于實際工作中高效解決復(fù)雜問題的。

背景

小明就職于一家戶外運動專營公司,他們公司旗下有好多個品牌,并且涉及到很多細(xì)分的行業(yè)。小明在這家公司任數(shù)據(jù)分析師,平時都是通過 Excel 來做數(shù)據(jù)分析的。今天老板丟給他一個任務(wù):下班前篩選出集團(tuán)公司旗下最近一年銷售額前五名的品牌以及銷售額。

對于 Excel 大佬來說,這不就是分分鐘的事嗎?小明并沒有放在眼里,直到市場部的同事將原始的數(shù)據(jù)文件發(fā)給他,他才意識到事情并沒有那么簡單:

這并不是想象中的排序取前五就行了。這總共有90個文件,按常規(guī)的思路來看,他要么將所有文件的內(nèi)容復(fù)制到一張表中進(jìn)行分類匯總,要么將每張表格進(jìn)行分類匯總,然后再最最終結(jié)果進(jìn)行分類匯總。

想想這工作量,再想想截止時間,小明撓了撓頭,感覺到要漸漸頭禿。

思路分析

這種體力活,寫程序解決是最輕松的啦。小明這時候想到了他的程序員好朋友小段,于是他把這個問題拋給了小段。

小段縷了下他那所剩無幾的頭發(fā),說:so easy,只需要找潘大師即可。

小明說:你搞不定嗎?還要找其他人!

小段苦笑說:不不不,潘大師是 Python 里面一個處理數(shù)據(jù)的庫,叫 Pandas ,俗稱 潘大師。

小明說:我不管什么大師不大師,就說需要多久搞定。

小段說:給我?guī)追昼妼懗绦颍倥軒酌腌娋秃昧耍?/p>

小明發(fā)過去了膜拜大佬的表情。

小段略微思考了下,整理了一下程序思路:

  • 計算每張表每一行的銷售額,用“訪客數(shù) * 轉(zhuǎn)化率 * 客單價”就行。
  • 將每張表格根據(jù)品牌匯總銷售額。
  • 將所有表格的結(jié)果匯總成一張總表
  • 在總表中根據(jù)品牌匯總銷售額并排序

編碼

第零步,讀取 Excel :

import pandas as pd

df = pd.read_excel("./tables/" + name)

第一步,計算每張表格內(nèi)的銷售額:

df['銷售額'] = df['訪客數(shù)'] * df['轉(zhuǎn)化率'] * df['客單價']

第二步,將每張表格根據(jù)品牌匯總銷售額:

df_sum = df.groupby('品牌')['銷售額'].sum().reset_index()

第三步,將所有表格的結(jié)果匯總成一張總表:

result = pd.DataFrame()
result = pd.concat([result, df_sum])

第四步,在總表中根據(jù)品牌匯總銷售額并排序:

final = result.groupby('品牌')['銷售額'].sum().reset_index().sort_values('銷售額', ascending=False)

最后,我們來看看完整的程序:

import pandas as pd
import os

result = pd.DataFrame()

for name in os.listdir("./tables"):
  try:
    df = pd.read_excel("./tables/" + name)
    df['銷售額'] = df['訪客數(shù)'] * df['轉(zhuǎn)化率'] * df['客單價']
    df_sum = df.groupby('品牌')['銷售額'].sum().reset_index()
    result = pd.concat([result, df_sum])
  except:
    print(name)
    pass

final = result.groupby('品牌')['銷售額'].sum().reset_index().sort_values('銷售額', ascending=False)
pd.set_option('display.float_format', lambda x: '%.2f' % x)
print(final.head())

最后的結(jié)果是這樣的:

品牌  銷售額
15 品牌-5 1078060923.62
8 品牌-17 1064495314.96
4 品牌-13 1038560274.21
3 品牌-12 1026115153.00
13 品牌-3 1006908609.07

可以看到最終的前五已經(jīng)出來了,整個程序運行起來還是很快的。

幾分鐘之后,小段就把結(jié)果給小明發(fā)過去了,小明感動得內(nèi)牛滿面,直呼改天請吃飯,拜師學(xué)藝!

總結(jié)

本文主要是想通過一個實際的案例來向大家展示潘大師(Pandas)的魅力,特別是應(yīng)用于這種表格處理,可以說是太方便了。寫過程序的可能都有點熟悉的感覺,這種處理方式有點類似于 SQL 查詢語句。潘大師不僅能使我們的程序處理起來變得更簡單高效,對于需要經(jīng)常處理表格的非程序員也是非常友好的,上手起來也比較簡單。

示例代碼:https://github.com/JustDoPython/python-examples/tree/master/xianhuan/pandasexcel

以上就是利用python匯總統(tǒng)計多張Excel的詳細(xì)內(nèi)容,更多關(guān)于python匯總統(tǒng)計多張Excel的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 利用Psyco提升Python運行速度

    利用Psyco提升Python運行速度

    這篇文章主要介紹了利用Psyco提升Python運行速度,需要的朋友可以參考下
    2014-12-12
  • python用函數(shù)創(chuàng)造字典的實例講解

    python用函數(shù)創(chuàng)造字典的實例講解

    在本篇文章里小編給大家整理的是一篇關(guān)于python用函數(shù)創(chuàng)造字典的實例講解內(nèi)容,有需要的朋友們可以學(xué)習(xí)參考下。
    2021-06-06
  • 使用已經(jīng)得到的keras模型識別自己手寫的數(shù)字方式

    使用已經(jīng)得到的keras模型識別自己手寫的數(shù)字方式

    這篇文章主要介紹了使用已經(jīng)得到的keras模型識別自己手寫的數(shù)字方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • python如何將一個四位數(shù)反向輸出

    python如何將一個四位數(shù)反向輸出

    這篇文章主要介紹了python如何將一個四位數(shù)反向輸出,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • python Django框架中的嵌套序列化器詳解

    python Django框架中的嵌套序列化器詳解

    在Web開發(fā)領(lǐng)域,創(chuàng)建和使用API(應(yīng)用程序編程接口)是很常見的,Django Rest Framework(DRF)是一個強大的工具包,在DRF中,一個關(guān)鍵概念是序列化器,在本文中,我們將深入研究Django中嵌套序列化器的概念以及它們?nèi)绾未龠M(jìn)復(fù)雜數(shù)據(jù)關(guān)系的處理,需要的朋友可以參考下
    2023-10-10
  • python 用struct模塊解決黏包問題

    python 用struct模塊解決黏包問題

    這篇文章主要介紹了python 用struct模塊解決黏包問題,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-11-11
  • python web框架 django wsgi原理解析

    python web框架 django wsgi原理解析

    這篇文章主要介紹了python web框架 django wsgi原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值
    2019-08-08
  • Python安裝docx依賴包教程

    Python安裝docx依賴包教程

    這篇文章主要介紹了Python安裝docx依賴包教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • Python爬蟲403錯誤的終極解決方案

    Python爬蟲403錯誤的終極解決方案

    爬蟲在爬取數(shù)據(jù)時,常常會遇到"HTTP Error 403: Forbidden"的提示,其實它只是一個HTTP狀態(tài)碼,表示你在請求一個資源文件但是nginx不允許你查看,下面這篇文章主要給大家介紹了關(guān)于Python爬蟲403錯誤的終極解決方案,需要的朋友可以參考下
    2023-05-05
  • Python裝飾器實現(xiàn)函數(shù)運行時間的計算

    Python裝飾器實現(xiàn)函數(shù)運行時間的計算

    這篇文章主要為大家詳細(xì)介紹了Python函數(shù)運行時間的計算,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02

最新評論

郧西县| 大竹县| 德阳市| 和顺县| 吉林省| 阿拉尔市| 土默特左旗| 旺苍县| 榕江县| 石泉县| 柞水县| 邛崃市| 铜梁县| 平南县| 十堰市| 仙居县| 乌拉特前旗| 常熟市| 贡山| 二手房| 临夏县| 广南县| 兴宁市| 太湖县| 镇巴县| 饶平县| 石家庄市| 无极县| 正阳县| 故城县| 柘城县| 柳林县| 博白县| 阿拉尔市| 洪江市| 广宗县| 旺苍县| 太保市| 小金县| 锡林郭勒盟| 旬阳县|