国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
pandas實(shí)現(xiàn)多個(gè)excel合并統(tǒng)計(jì)

簡述

  • 案例說明

  • pandas環(huán)境

  • 完整示例

    • 第一步 打開excel文件

    • 第二步 合并sheet

    • 第三步 統(tǒng)計(jì)各類型商品銷售額,生成excel文件

    • 第四步 合并兩列單元格

  • 總結(jié)

簡述

Pandas是python一款用于數(shù)據(jù)分析處理的優(yōu)秀工具,掌握簡單的使用方法,可以減少我們很多的工作時(shí)間,本篇主要介紹pandas對(duì)excel的讀寫,以及簡單的合并統(tǒng)計(jì),下一章會(huì)為大家介紹Pandas的簡單繪圖。

案例說明

需求:

  1. 將兩個(gè)sheet文件合并為一個(gè),生成新excel文件

  2. 統(tǒng)計(jì)兩天各類型商品的銷售額,生成新excel文件

  3. 將相同名稱但不同價(jià)格的商品匯總(合并單元格),生成新excel文件

數(shù)據(jù)文件:


pandas環(huán)境

這里默認(rèn)你已經(jīng)安裝好了pandas環(huán)境,也就是import pandas as pd 沒有報(bào)錯(cuò)
如果你沒有pandas環(huán)境,網(wǎng)上有很多優(yōu)秀教程,其實(shí)很簡單,只需要python環(huán)境下的pip install pandas就行了

完整示例

第一步 打開excel文件

第一步是最簡單的一步,但也是用的最多的一步,大家主要記住幾個(gè)常用的參數(shù)。

import pandas as pd 
import matplotlib.pyplot as plt
data = pd.read_excel('E:/data/myfile/商品銷售信息表.xlsx',encoding='windows-1252',
                        sheetname=None,
                        header=1,
                        skip_footer=1
                    )

參數(shù)1:文件路徑
參數(shù)2: sheetname,默認(rèn)為0,表示sheet的下標(biāo)索引,設(shè)置為None表示打開所有 Sheet,若要打開指定的sheet,
可傳入下標(biāo)數(shù)組, 如sheetname=[0,1,6,8]
參數(shù)3:header,標(biāo)題所在的行數(shù),若不設(shè)置,默認(rèn)第一行為標(biāo)題(header=0),本例中標(biāo)題在第二行,所以header=1
參數(shù)4:skip_footer,底部跳過多少行,本例中底部有一行多余數(shù)據(jù),故skip_footer=1

data返回的是一個(gè)dataframe集合,類似Dictionary
可以這樣輸出:data['商品銷售信息表0714’] 或 data['商品銷售信息表0715’]

第二步 合并sheet

合并sheet要用到concat函數(shù),根據(jù)表頭進(jìn)行合并,代碼如下:

import pandas as pd 
import matplotlib.pyplot as plt
data = pd.read_excel('E:/data/myfile/商品銷售信息表.xlsx',encoding='windows-1252',
                        sheetname=None,
                        header=1,
                        skip_footer=1
                    )


df_all = pd.concat([data['商品銷售信息表0714'],data['商品銷售信息表0715']],axis=0)

concat 的兩個(gè)參數(shù):
第一個(gè)參數(shù) 是要合并的dataframe對(duì)象數(shù)組,也就是sheet集合
第二個(gè)參數(shù) 可以省略,代表合并的方向,默認(rèn)是0,表示縱向合并;

合并的對(duì)象

第三步 統(tǒng)計(jì)各類型商品銷售額,生成excel文件

其實(shí)從統(tǒng)計(jì)學(xué)的角度來說,這一步之前應(yīng)該是數(shù)據(jù)清洗,處理掉空值異常值,這里暫時(shí)不做說明。
Pandas對(duì)數(shù)據(jù)的統(tǒng)計(jì)處理,主要使用 groupby 函數(shù),熟悉sql的朋友應(yīng)該不會(huì)陌生,也就是分組統(tǒng)計(jì)

import pandas as pd 
import matplotlib.pyplot as plt
data = pd.read_excel('E:/data/myfile/商品銷售信息表.xlsx',encoding='windows-1252',
                        sheetname=None,
                        header=1,
                        skip_footer=1
                    )
df_all = pd.concat([data['商品銷售信息表0714'],data['商品銷售信息表0715']],axis=0)
df_type = df_all.groupby(['商品名','價(jià)格']).sum()
df_result = df_type.reset_index()


groupby 會(huì)把所有的數(shù)字列全部匯總,如需過濾,可使用 df_result [{'商品名’,’價(jià)格’,'數(shù)量’,'總價(jià)’}] 進(jìn)行過濾

按照 商品-價(jià)格 分類匯總,這里調(diào)用 reset_index() 方法,讓結(jié)果看起來更直接一些。
生成excel:

df_result.to_excel('E:/dat/myfile/分類統(tǒng)計(jì)各類型商品銷售額.xlsx')

第四步 合并兩列單元格

合并兩列單元格的思路,是生成一列新的單元格

import pandas as pd 
import matplotlib.pyplot as plt
data = pd.read_excel('E:/data/myfile/商品銷售信息表.xlsx',encoding='windows-1252',
                        sheetname=None,
                        header=1,
                        skip_footer=1
                    )

df_all = pd.concat([data['商品銷售信息表0714'],data['商品銷售信息表0715']],axis=0)
df_all['商品-價(jià)格'] = df_all['商品名'] +  '-' + df_all['價(jià)格'].map(str)

輸出df_all:


選擇需要保存的列:

df_result = df_type[{'商品-價(jià)格','數(shù)量','總價(jià)'}]
df_result.to_excel('E:/data/myfile/合并_商品銷售信息表.xlsx')


總結(jié)

示例相對(duì)比較簡單,在實(shí)際運(yùn)用中可能遇到的問題會(huì)比較復(fù)雜,希望大家可以一起交流學(xué)習(xí),這是一個(gè)知識(shí)大爆炸的年代,大到終身學(xué)習(xí)也未必學(xué)得完,只有不斷的交流合作,才能保持自己的進(jìn)步。

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
一文講述Pandas庫的數(shù)據(jù)讀取、數(shù)據(jù)獲取、數(shù)據(jù)拼接、數(shù)據(jù)寫出
使用Python拆分Excel工作表
使用Python批量篩選上千個(gè)Excel文件中的某一行數(shù)據(jù)并另存為新Excel文件(上篇)
竟然只需十分鐘就能自如掌握Python pandas
pandas的菜鳥級(jí)應(yīng)用(誰都能學(xué)會(huì))
利用pandas將多張表按照行索引橫向連接到一起,concat的用法
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服