摘? 要:文章以駐馬店卷煙廠綜合合格率分析為例,詳細闡述了基于Pandas對Excel文件進行批量導(dǎo)入與分析的實現(xiàn)過程。該方法實現(xiàn)了Excel數(shù)據(jù)導(dǎo)入與分析的自動化,有效避免了由于數(shù)據(jù)量大、表格結(jié)構(gòu)復(fù)雜造成的人工操作多、數(shù)據(jù)匯總難、易出錯、效率低等難點,該程序也適用于CSV、SQL、TXT、HTML等文件的批量導(dǎo)入與分析,具有良好的實用性與推廣價值。
關(guān)鍵詞:Pandas;Excel;批量導(dǎo)入;數(shù)據(jù)分析
中圖分類號:TP391? ? ? ?文獻標(biāo)識碼:A 文章編號:2096-4706(2020)01-0060-03
Abstract:Combined with practical application,taking the comprehensive qualification rate analysis of Zhumadian Cigarette Factory as an example,this paper elaborates the implementation process of batch input and analysis of Excel files based on Pandas. This method realizes the automation of Excel data input and analysis,effectively avoids the difficulties of manual operation,data collection,error prone and low efficiency caused by large amount of data and complex table structure. The program is also suitable for batch input and analysis of CSV,SQL,TXT,HTML and other files,which has good practicability and promotion value.
Keywords:Pandas;Excel;batch input;data analysis
0? 引? 言
在企業(yè)數(shù)據(jù)分析的過程中,經(jīng)常要對大量Excel表進行數(shù)據(jù)匯總,再計算出綜合的指標(biāo)。這些Excel表命名類似、結(jié)構(gòu)一致,通常采用復(fù)制、粘貼的辦法將各表數(shù)據(jù)粘貼至總表,再對總表進行數(shù)據(jù)核算。由于Excel表數(shù)量多、數(shù)據(jù)結(jié)構(gòu)復(fù)雜,數(shù)據(jù)匯總的過程既占用統(tǒng)計人員大量的時間,又無法避免人工操作導(dǎo)致的數(shù)據(jù)缺失、數(shù)據(jù)錯誤、格式錯誤等,嚴重影響數(shù)據(jù)分析的及時性、準(zhǔn)確性。為此,需要借助數(shù)據(jù)分析工具對Excel數(shù)據(jù)進行批量導(dǎo)入與分析。Pandas是Python下最強大的數(shù)據(jù)分析和探索工具,提供了高效操作大型數(shù)據(jù)集所需的工具。Pandas不僅提供了計數(shù)、篩選、排序、分組、繪圖、方差分析、數(shù)據(jù)透視、數(shù)據(jù)合并與重塑等常用的統(tǒng)計分析功能,還提供了自定義函數(shù)功能以滿足用戶個性化的需求。下文介紹如何基于Pandas實現(xiàn)Excel文件的批量導(dǎo)入與分析,提高企業(yè)數(shù)據(jù)分析的工作效率。
1? 需求分析
駐馬店卷煙廠質(zhì)量綜合合格率分析包括數(shù)據(jù)生成、數(shù)據(jù)匯總、數(shù)據(jù)分析等環(huán)節(jié)。在數(shù)據(jù)生成環(huán)節(jié)質(zhì)檢人員操作質(zhì)檢儀器自動生成質(zhì)檢記錄表,每個質(zhì)檢記錄表都是單獨的Excel文件,其中記錄了本次質(zhì)檢的詳細數(shù)據(jù)并以系統(tǒng)時間命名保存;在數(shù)據(jù)匯總環(huán)節(jié)統(tǒng)計人員采用復(fù)制、粘貼的辦法將符合條件的質(zhì)檢記錄表匯總為月度總表,并補全其中的缺失值;在數(shù)據(jù)分析環(huán)節(jié)統(tǒng)計人員首先導(dǎo)入各牌號的判定標(biāo)準(zhǔn),接著判斷每次質(zhì)檢的質(zhì)量標(biāo)偏、吸阻標(biāo)偏、圓周均值 是否合格,然后統(tǒng)計質(zhì)量標(biāo)偏、吸阻標(biāo)偏、圓周均值的合格率并以0.4、0.4、0.2的比例計算質(zhì)量綜合合格率,最后計算各機組與班組的月度質(zhì)量標(biāo)偏均值、月度吸阻標(biāo)偏均值、月度圓周標(biāo)偏均值。
質(zhì)量綜合合格率分析的核算過程存在以下幾個難點:數(shù)據(jù)的匯總依賴于人工復(fù)制、粘貼,易出錯且效率低;質(zhì)檢記錄表中的“班組”與“機組”列為合并單元格,導(dǎo)致匯總后的月度總表內(nèi)出現(xiàn)大量缺失值,需要人工補全;質(zhì)量綜合合格率分析包括質(zhì)量綜合合格率的計算與各項標(biāo)偏的分類匯總,其計算過程復(fù)雜、耗費時間。Pandas提供了導(dǎo)入Excel文件的函數(shù),可實現(xiàn)Excel文件的批量導(dǎo)入,Pandas中的數(shù)據(jù)幀類似于Excel中的工作表,以二維表的形式存放數(shù)據(jù),且其分析功能也與Excel類似,因此基于Pandas可以極大地簡化現(xiàn)有的質(zhì)量綜合合格率的分析過程。
2? 技術(shù)方法
基于Pandas實現(xiàn)質(zhì)檢記錄表的批量導(dǎo)入與分析,具體流程包括以下5個步驟:
(1)創(chuàng)建路徑:獲取計算機桌面路徑,在計算機桌面檢查并創(chuàng)建質(zhì)量綜合合格率分析所需的文件夾,統(tǒng)計人員將符合條件的質(zhì)檢記錄表存放到此文件夾內(nèi)。
(2)數(shù)據(jù)導(dǎo)入與清洗:首先設(shè)定合適的文件名篩選規(guī)則,接著掃描文件夾內(nèi)所有文件名符合規(guī)則的Excel文件,通過設(shè)定文件的路徑、標(biāo)題行、索引列將Excel數(shù)據(jù)導(dǎo)入為Pandas的數(shù)據(jù)幀。導(dǎo)入后的數(shù)據(jù)通常包含無效值、缺失值、重復(fù)值、錯誤值等,通過數(shù)據(jù)清洗的過濾掉不符合要求的數(shù)據(jù),Pandas中過濾數(shù)據(jù)的常見操作包括刪除、填充、替換等。
(3)數(shù)據(jù)填充與匯總:清洗后的質(zhì)檢數(shù)據(jù)存在缺失值,采用填充所有空值為上一個非空值的方法將數(shù)據(jù)幀補充完整。接著依次合并填充后的數(shù)據(jù)幀,直至文件夾內(nèi)符合命名規(guī)則的Excel表合并完畢,即可得到質(zhì)檢數(shù)據(jù)的月度總表。
(4)數(shù)據(jù)分析:從月度總表中篩選出質(zhì)量數(shù)據(jù)、吸阻數(shù)據(jù)、圓周數(shù)據(jù),采用數(shù)據(jù)透視、計數(shù)、自定義函數(shù)、數(shù)據(jù)合并與重塑等功能對各數(shù)據(jù)幀進行快速分析,計算各機組月度質(zhì)量綜合合格率、各機組各項標(biāo)偏月度均值、各班組各項標(biāo)偏月度均值。
(5)數(shù)據(jù)導(dǎo)出:將月度質(zhì)量綜合合格率、各機組各項標(biāo)偏月度均值、各班組各項標(biāo)偏月度均值三個數(shù)據(jù)幀保存至同一個Excel工作簿,便于統(tǒng)計人員查看、分析、記錄。
3? 程序?qū)崿F(xiàn)過程
4? 結(jié)? 論
對于大量Excel文件的統(tǒng)計分析,如果缺乏自動化、批量化的數(shù)據(jù)匯總方法,數(shù)據(jù)匯總的過程將成為耗時多、易出錯、效率低的瓶頸環(huán)節(jié)。借助功能強大的Pandas工具,統(tǒng)計人員可以快速、準(zhǔn)確地從大量結(jié)構(gòu)類似的Excel文件中導(dǎo)入數(shù)據(jù)、清洗數(shù)據(jù)、匯總數(shù)據(jù)、分析數(shù)據(jù)。除了Pandas工具自帶的統(tǒng)計分析函數(shù),用戶也可以方便地自定義函數(shù),實現(xiàn)個性化的分析功能,極大地拓展Pandas的分析能力,有效提高統(tǒng)計人員的工作效率。除了Excel類型的文件,Pandas也適用于CSV、SQL、TXT、HTML等類型文件的批量導(dǎo)入與分析,具有良好的實用性與推廣價值。
參考文獻:
[1] 張良均,王路,譚立云,等.Python數(shù)據(jù)分析與挖掘?qū)崙?zhàn) [M].北京:機械工業(yè)出版社,2015:60-64.
[2] 張若愚.Python科學(xué)計算 [M].北京:清華大學(xué)出版社,2012:469-471.
[3] 麥金尼.利用Python進行數(shù)據(jù)分析:第2版 [M].徐敬一,譯.北京:機械工業(yè)出版社,2018:10-11.
[4] 馬瑟斯.Python編程從入門到實踐 [M].袁國忠,譯.北京:人民郵電出版社,2016:80-82.
[5] 西格蘭.集體智慧編程 [M].莫映,王開福,譯.北京:電子工業(yè)出版社,2015:156-157.
[6] 張志強,趙越.零基礎(chǔ)學(xué)Python [M].北京:機械工業(yè)出版社,2015:85-86.
作者簡介:馬孝宗(1989-),男,漢族,河南駐馬店人,信息管理員,助理工程師,碩士,研究方向:數(shù)據(jù)分析、辦公自動化。