亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Python在實(shí)驗(yàn)室設(shè)備預(yù)約機(jī)時(shí)統(tǒng)計(jì)中的應(yīng)用

        2020-01-08 02:22:44馬玲烏李瑛王英韓曉佳吳煒文
        現(xiàn)代信息科技 2020年15期

        馬玲 烏李瑛 王英 韓曉佳 吳煒文

        摘 ?要:Python因其簡單易學(xué)及強(qiáng)大的第三方庫支持等優(yōu)點(diǎn),逐漸在數(shù)據(jù)分析、圖像處理、數(shù)值計(jì)算和科學(xué)計(jì)算等眾多領(lǐng)域得到了越來越廣泛的應(yīng)用。通過使用Python,并借助其核心數(shù)據(jù)分析庫Pandas,實(shí)現(xiàn)了對實(shí)驗(yàn)室設(shè)備預(yù)約機(jī)時(shí)記錄的便捷的數(shù)據(jù)導(dǎo)入、數(shù)據(jù)篩選、數(shù)據(jù)分析和結(jié)果輸出,并且該方法編程簡單、代碼簡潔、運(yùn)行效率高,非常適用于實(shí)驗(yàn)室管理中存在大量實(shí)驗(yàn)記錄的數(shù)據(jù)統(tǒng)計(jì)相關(guān)工作。

        關(guān)鍵詞:Python;Pandas;數(shù)據(jù)統(tǒng)計(jì);實(shí)驗(yàn)室管理

        中圖分類號:TP311.1 ? ? ? 文獻(xiàn)標(biāo)識碼:A 文章編號:2096-4706(2020)15-0027-03

        Abstract:Because of its easy-to-learn and powerful third-party library support,Python has gradually been widely used in many fields such as data analysis,image processing,numerical computing,and scientific computing. This paper uses Python and its core data analysis library Pandas to realize convenient data import,data screening,data analysis and result output of the records of laboratory equipment reservations. This method has simple programming,concise code,high operating efficiency,and is very suitable for data statistics related work in laboratory management which has a large number of experimental records.

        Keywords:Python;Pandas;data statistics;laboratory management

        0 ?引 ?言

        常用的數(shù)據(jù)分析工具有SAS、SPSS、R語言、Python,MATLAB等[1],但Python因其具有的簡易性、實(shí)用性、大量的開源庫和分析框架,以及龐大的社區(qū)等特點(diǎn),而逐漸成為大數(shù)據(jù)分析領(lǐng)域最受歡迎的主流程序語言之一[2]。Pandas是Python數(shù)據(jù)分析的核心庫,因納入了大量的庫和標(biāo)準(zhǔn)數(shù)據(jù)模型,故可提供大量的可快速方便處理數(shù)據(jù)的函數(shù),以及高效處理數(shù)據(jù)集所需的工具[3-6]。

        上海交通大學(xué)先進(jìn)電子材料與器件校級平臺,是校級大型儀器設(shè)備共享平臺,平臺擁有電子束曝光系統(tǒng)、雙束聚焦離子束系統(tǒng)、深硅刻蝕系統(tǒng)、場發(fā)射掃描電子顯微鏡等大批先進(jìn)的微納加工及測試設(shè)備;并且在面向校內(nèi)用戶提供基礎(chǔ)實(shí)驗(yàn)以及科研支撐的同時(shí),也面向社會(huì)相關(guān)的科研院所和企業(yè)單位開放,故每天會(huì)產(chǎn)生大量的實(shí)驗(yàn)預(yù)約記錄;如何方便快捷的根據(jù)需要統(tǒng)計(jì)的項(xiàng)目對這些實(shí)驗(yàn)預(yù)約記錄進(jìn)行匯總統(tǒng)計(jì),是實(shí)驗(yàn)室管理統(tǒng)計(jì)工作的工作要點(diǎn)。

        本文利用Python,結(jié)合Pandas庫,對實(shí)驗(yàn)室設(shè)備預(yù)約機(jī)時(shí)匯總表的Excel文件進(jìn)行了數(shù)據(jù)導(dǎo)入、數(shù)據(jù)篩選、數(shù)據(jù)分組聚合以及數(shù)據(jù)寫入,最終方便快捷地得到了所需各設(shè)備的有效預(yù)約機(jī)時(shí)等相關(guān)參數(shù)的統(tǒng)計(jì)處理結(jié)果。

        1 ?數(shù)據(jù)導(dǎo)入

        Pandas常用的讀/寫數(shù)據(jù)源主要包括:文本文件、Excel文件、數(shù)據(jù)庫文件和JSON文件。

        本文預(yù)導(dǎo)入的實(shí)驗(yàn)室設(shè)備預(yù)約機(jī)時(shí)匯總表為Excel文件,包含總記錄條數(shù)為526條,涉及設(shè)備35臺;所需的統(tǒng)計(jì)項(xiàng)目及示例記錄如表1所示。

        在執(zhí)行Pandas讀取和寫入Excel的操作時(shí),需要提前安裝xlrd庫和xlwt庫,并在當(dāng)前的代碼中導(dǎo)入這兩個(gè)庫。安裝xlrd、xlwt庫的方法:進(jìn)入cmd狀態(tài),分別輸入命令“pip install xlrd”“pip install xlwt”即可。

        Pandas提供了read_excel()函數(shù)來讀取Excel文件,將文件內(nèi)容讀取為DataFrame對象df。代碼為:

        import pandas as pd #導(dǎo)入pandas庫

        import xlrd #導(dǎo)入xlrd庫

        import xlwt #導(dǎo)入xlwt庫

        df=pd.read_excel('EquipmentStatistics_source.xlsx') #讀取原始設(shè)備機(jī)時(shí)匯總表單,默認(rèn)讀取第一個(gè)表單

        2 ?數(shù)據(jù)篩選

        因本實(shí)驗(yàn)室設(shè)備預(yù)約機(jī)時(shí)匯總表的原始表單里存在一定量的不需要納入統(tǒng)計(jì)范疇的預(yù)約記錄,如“預(yù)約狀態(tài)”為“預(yù)約撤銷”或“預(yù)約終止”的預(yù)約記錄,故需要在作統(tǒng)計(jì)前進(jìn)行相應(yīng)的數(shù)據(jù)篩選,即僅篩選出“預(yù)約狀態(tài)”為“預(yù)約成功”的預(yù)約記錄做統(tǒng)計(jì)。

        Pandas提供了isin()函數(shù),來篩選出DataFrame里滿足條件的行數(shù)據(jù)。

        在開始進(jìn)行數(shù)據(jù)篩選前,我們先對篩選前的數(shù)據(jù),根據(jù)“預(yù)約狀態(tài)”進(jìn)行分類統(tǒng)計(jì)。Pandas提供了value_counts()函數(shù),可對數(shù)據(jù)按指定的條件進(jìn)行分類統(tǒng)計(jì),即統(tǒng)計(jì)出條件數(shù)據(jù)出現(xiàn)的頻率。

        數(shù)據(jù)篩選前,預(yù)約記錄條數(shù)按“預(yù)約狀態(tài)”的統(tǒng)計(jì)分布如表2所示。

        接下來,開始進(jìn)行數(shù)據(jù)篩選,即從原始預(yù)約記錄中僅篩選出“預(yù)約狀態(tài)”為“預(yù)約成功”的預(yù)約記錄。代碼為:

        print("\n開始進(jìn)行數(shù)據(jù)篩選:")

        title = ['預(yù)約成功']

        df2 = df[(df['預(yù)約狀態(tài)'].isin(title)) ] #篩選出“預(yù)約狀態(tài)”為“預(yù)約成功”的數(shù)據(jù),并將結(jié)果存儲(chǔ)在df2

        print("\n數(shù)據(jù)篩選完成!")

        在數(shù)據(jù)篩選完成后,預(yù)約記錄條數(shù)按“預(yù)約狀態(tài)”的統(tǒng)計(jì)分布如表3所示??梢?,已成功將“預(yù)約狀態(tài)”為“預(yù)約成功”的預(yù)約記錄篩選出來。

        3 ?數(shù)據(jù)分組聚合

        數(shù)據(jù)篩選完成后,需要根據(jù)“設(shè)備名稱”來依次統(tǒng)計(jì)所有預(yù)約記錄的“預(yù)約機(jī)時(shí)、加工數(shù)量、預(yù)約次數(shù)”,并且除了“預(yù)約次數(shù)”是需要計(jì)數(shù)統(tǒng)計(jì)外,其余兩項(xiàng)統(tǒng)計(jì)項(xiàng)目均需要進(jìn)行求和統(tǒng)計(jì)。

        Pandas提供了groupby()分組函數(shù),和agg()聚合函數(shù),可方便地對多維數(shù)據(jù)按分組分別進(jìn)行計(jì)數(shù)、求和、求均值、求方差,求標(biāo)準(zhǔn)差等的數(shù)據(jù)統(tǒng)計(jì)。

        本次統(tǒng)計(jì),先根據(jù)“設(shè)備名稱”進(jìn)行分組,再對分組后的數(shù)據(jù)對象依次進(jìn)行“預(yù)約機(jī)時(shí)、加工數(shù)量、預(yù)約次數(shù)”的“求和、求和、計(jì)數(shù)”聚合運(yùn)算。代碼為:

        df3 = df2.groupby(['設(shè)備名稱']).agg({'預(yù)約機(jī)時(shí)':'sum','加工數(shù)量':'sum','預(yù)約次數(shù)':'count'})#按“設(shè)備序列號”進(jìn)行多列數(shù)據(jù)的分組,并將列名稱為“預(yù)約機(jī)時(shí)、加工數(shù)量、預(yù)約次數(shù)”的數(shù)據(jù)分別按照“求和、求和、計(jì)數(shù)”進(jìn)行聚合運(yùn)算;并將結(jié)果存儲(chǔ)在df3

        df4 = df3.sort_values(by='預(yù)約機(jī)時(shí)',ascending=False)#將df3按“預(yù)約機(jī)時(shí)”的降序進(jìn)行排序,并將結(jié)果存儲(chǔ)在df4

        print(df4) #在程序運(yùn)行窗口打印出排序后的數(shù)據(jù)統(tǒng)計(jì)結(jié)果

        在程序運(yùn)行窗口里可查看到按“預(yù)約機(jī)時(shí)”的降序進(jìn)行排序的統(tǒng)計(jì)結(jié)果打印顯示,統(tǒng)計(jì)結(jié)果示例如表4所示。可以看到Python對所篩選出的記錄已根據(jù)“設(shè)備名稱”,分別按“預(yù)約機(jī)時(shí)、加工數(shù)量、預(yù)約次數(shù)”實(shí)現(xiàn)了相應(yīng)的“求和、求和、計(jì)數(shù)”統(tǒng)計(jì)要求,并已按照“預(yù)約機(jī)時(shí)”的降序進(jìn)行了排序。

        4 ?數(shù)據(jù)寫入

        屆于在程序運(yùn)行窗口查看到的統(tǒng)計(jì)結(jié)果無法直接復(fù)制粘貼至Excel里,因?yàn)閺?fù)制得到的每行的所有列的列內(nèi)容會(huì)存放在同一個(gè)單元格里,故為了更方便地存儲(chǔ)和查看統(tǒng)計(jì)結(jié)果,特補(bǔ)充了將統(tǒng)計(jì)結(jié)果新建Excel寫入的功能。Pandas提供了to_excel()函數(shù)來將DataFrame數(shù)據(jù)保存為Excel文件。代碼為:

        writer = pd.ExcelWriter('EquipmentStatistics_result.xlsx') #在程序文件所在路徑下新建Excel

        df4.to_excel(writer,sheet_name='統(tǒng)計(jì)結(jié)果')#將df3的內(nèi)容寫入新建的Excel里,并將工作表命名為“統(tǒng)計(jì)結(jié)果”

        writer.save() #保存Excel

        writer.close() #關(guān)閉Excel

        運(yùn)行結(jié)果:在程序文件所在的路徑下自動(dòng)新建了一個(gè)命名為“EquipmentStatistics_result.xlsx”的Excel工作簿,此工作簿的工作表1被命名為“統(tǒng)計(jì)結(jié)果”,并且本次實(shí)驗(yàn)室設(shè)備預(yù)約機(jī)時(shí)及相關(guān)參數(shù)的統(tǒng)計(jì)結(jié)果已成功的寫入到了此“統(tǒng)計(jì)結(jié)果”工作表中。

        5 ?結(jié) ?論

        綜上所述,通過利用數(shù)據(jù)分析工具Python及借助其Pandas庫,方便快捷地實(shí)現(xiàn)了對實(shí)驗(yàn)室設(shè)備機(jī)時(shí)等相關(guān)數(shù)據(jù)的統(tǒng)計(jì)處理。處理步驟包括:數(shù)據(jù)寫入、數(shù)據(jù)篩選、數(shù)據(jù)分組聚合、數(shù)據(jù)寫入。每個(gè)步驟,Python都提供了相應(yīng)的數(shù)據(jù)調(diào)用接口,實(shí)現(xiàn)了對數(shù)據(jù)的快速精確計(jì)算及傳輸。對于越需要大量重復(fù)計(jì)算的工作內(nèi)容,Python的優(yōu)勢越能體現(xiàn),在保證計(jì)算準(zhǔn)確度、降低人工錯(cuò)誤的同時(shí),極大地節(jié)省了管理人員的時(shí)間成本、提升了工作效率。

        參考文獻(xiàn):

        [1] 盧甲戎,劉權(quán)盼.如何利用Python提高統(tǒng)計(jì)工作效率 [J].中國統(tǒng)計(jì),2020(4):71-73.

        [2] 鄭丹青.Python數(shù)據(jù)分析基礎(chǔ)教程 [M].北京:人民郵電出版社,2020:7-8.

        [3] 劉新鵬,高斌.利用Python和Pandas進(jìn)行學(xué)生成績處理 [J].信息與電腦(理論版),2020,32(7):41-43.

        [4] 吳琳.Pandas在工資數(shù)據(jù)年度匯總中的應(yīng)用 [J].現(xiàn)代信息科技,2020,4(10):87-88+91.

        [5] 胡前防,連鵬偉,陳乾坤.Python在統(tǒng)計(jì)數(shù)據(jù)處理中的應(yīng)用 [J].市場研究,2019(8):33-35.

        [6] 馬孝宗.Pandas在考勤分析中的應(yīng)用 [J].電腦編程技巧與維護(hù),2020(2):92-94.

        作者簡介:馬玲(1985—),女,漢族,湖北荊門人,助理實(shí)驗(yàn)師,碩士,主要研究方向:實(shí)驗(yàn)室管理,預(yù)約系統(tǒng)管理。

        国产色a在线观看| 国产乱码精品一区二区三区久久 | 亚洲 欧美 激情 小说 另类| 一区二区三区在线免费av| 久久亚洲中文字幕精品二区| 中国老太婆bb无套内射| 69久久夜色精品国产69| 老熟女熟妇嗷嗷叫91| 国产自拍成人在线免费视频| 国语自产精品视频在线看| 东京热加勒比无码少妇| 国产成人亚洲综合无码精品| 国产一级黄片久久免费看| 中文字幕一区二区中出后入| 国产莉萝无码av在线播放| 精品一级毛片| 一区二区三区在线免费av| 国产一区二区自拍刺激在线观看| 撕开奶罩揉吮奶头视频| 亚洲黄色尤物视频| 视频一区二区三区国产| 999国产精品999久久久久久| 小sao货水好多真紧h视频| 老熟女一区二区免费| 免费人成黄页网站在线一区二区| 国产成人小视频| 亚洲精品无码av片| 亚洲中文字幕无线乱码va| 大香蕉av一区二区三区| 亚洲第一se情网站| 国产福利小视频在线观看| 在线视频精品少白免费观看| 日本真人边吃奶边做爽动态图 | 国产成人美女AV| 日韩精品自拍一区二区| 公与淑婷厨房猛烈进出| 亚洲中文久久精品无码ww16| 亚洲又黄又大又爽毛片| 久久婷婷综合缴情亚洲狠狠| 狠狠噜天天噜日日噜视频麻豆| 色综合久久久久综合999|