999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Python語言在大數(shù)據(jù)分析中的應(yīng)用

2020-09-26 11:43:52馮艷茹
電腦知識與技術(shù) 2020年24期
關(guān)鍵詞:數(shù)據(jù)分析大數(shù)據(jù)

馮艷茹

摘要:Python語言簡潔,易學(xué),具有豐富的標(biāo)準(zhǔn)庫和第三方庫,它不僅在快速開發(fā)應(yīng)用程序上顯示出極高的開發(fā)效率,而且在大數(shù)據(jù)、人工智能等數(shù)據(jù)科學(xué)領(lǐng)域得到了極大的應(yīng)用。該文重點闡述了Python語言和數(shù)據(jù)分析的關(guān)系以及Python語言是如何實現(xiàn)數(shù)據(jù)分析的。

關(guān)鍵詞:數(shù)據(jù)分析;大數(shù)據(jù);Python;Matplotlib

中圖分類號:G642 ? ? ? ?文獻(xiàn)標(biāo)識碼:A

文章編號:1009-3044(2020)24-0072-02

隨著計算機(jī)技術(shù)的發(fā)展以及科技的進(jìn)步,各行各業(yè)每天都在產(chǎn)生和收集大量的數(shù)據(jù),21世紀(jì)已經(jīng)進(jìn)入了大數(shù)據(jù)時代。在當(dāng)前的大數(shù)據(jù)時代背景下,各個領(lǐng)域的發(fā)展都離不開數(shù)據(jù)的分析,決策將更加依賴于數(shù)據(jù)和分析,而并非基于經(jīng)驗和直覺。數(shù)據(jù)分析是大數(shù)據(jù)領(lǐng)域不可缺少的環(huán)節(jié)。數(shù)據(jù)分析是指使用適當(dāng)?shù)慕y(tǒng)計分析方法對收集來的大量數(shù)據(jù)進(jìn)行分析,并從中提取有用信息并形成結(jié)論。數(shù)據(jù)分析的任務(wù)就是從海量無序的大量數(shù)據(jù)中找到有價值的數(shù)據(jù),給數(shù)據(jù)賦予新的意義,并為決策者提供參考[1]。Python是數(shù)據(jù)分析的撒手锏。2017年P(guān)ython語言超越其他編程語言,成了年度最受歡迎的編程語言,受到了眾多編程人員的青睞。Python具有豐富的庫,在快速開發(fā)時展現(xiàn)出非常大的優(yōu)勢,在數(shù)據(jù)分析、數(shù)據(jù)科學(xué)、人工智能等學(xué)習(xí)工作中都不可避免地使用Python,成為繼C++和Java之后的第三大語言。

1 Python語言及特點

Python 語言是一種使用廣泛、跨平臺的高級程序設(shè)計語言,由荷蘭數(shù)學(xué)家Guido Van Rossum設(shè)計創(chuàng)造[4]。Python的設(shè)計哲學(xué)強(qiáng)調(diào)代碼的可讀性和簡潔的語言,相比于C++或Java,Python能夠用更少的代碼表達(dá)想法。自1991公開發(fā)布第一個版本至今,Python經(jīng)過了多次變革并增加了許多新特性,更加簡潔規(guī)范,它已被廣泛應(yīng)用于系統(tǒng)管理任務(wù)的處理和web編程。Python語言具有以下特點:

1)簡單易學(xué)

相比其他編程語言(比如 C語言),Python代碼非常簡單,上手容易,非常適合初學(xué)者。比如我們要完成某個功能,Python的代碼量可能是C語言的十分之一,如果使用Python來寫程序,其工作效率會顯著提高,這是 Python具有巨大吸引力的一大特點。

2)面向?qū)ο?/p>

Python中的一切皆是對象。既支持面向過程編程,也支持面向?qū)ο缶幊獭3绦蚴怯蓴?shù)據(jù)和功能組合而成的對象構(gòu)建起來的。與其他主要的語言如C++和Java相比,Python以一種非常強(qiáng)大又簡單的方式實現(xiàn)面向?qū)ο缶幊獭?/p>

3)可移植性

Python程序可以在多個平臺上運行,這些平臺包括Linux、Windows、Android平臺等,只需為平臺提供了相應(yīng)的Python解釋器。

大部分語言為編譯型或解釋型,如C/C++等為編譯型,python為解釋型語言。C源文件通過預(yù)處理、編譯、匯編、鏈接,最終機(jī)器執(zhí)行目標(biāo)代碼(二進(jìn)制)。而Python則通過解釋器把源代碼轉(zhuǎn)換成稱為字節(jié)碼的中間形式,Python虛擬機(jī)用解釋的方式執(zhí)行代碼。

4)豐富的庫

Python標(biāo)準(zhǔn)庫確實很龐大,它可以幫助你處理各種工作,包括正則表達(dá)式、數(shù)據(jù)庫、網(wǎng)頁瀏覽器、XML、XML-RPC、HTML、WAV文件、密碼系統(tǒng)、GUI(圖形用戶界面)Tk和其他與系統(tǒng)有關(guān)的操作。除了標(biāo)準(zhǔn)庫以外,還有許多其他高質(zhì)量的庫,如 wXPython、Twisted和Python圖像庫等。

5)規(guī)范的代碼

Python采用強(qiáng)制縮進(jìn)的方式使得代碼具有很好的可讀性。

2 Python和數(shù)據(jù)分析

在數(shù)據(jù)分析和數(shù)據(jù)挖掘領(lǐng)域,Python、R語言和SAS等都是非常受歡迎的編程工具。Python和R語言都是開源的,普遍應(yīng)用于互聯(lián)網(wǎng)行業(yè),而SAS為商業(yè)付費軟件,堪稱金融和醫(yī)療行業(yè)的標(biāo)準(zhǔn)工具。數(shù)據(jù)分析需要和數(shù)據(jù)進(jìn)行大量的交互、探索性計算以及數(shù)據(jù)結(jié)果的可視化等[2]。Python有越來越多的第三方庫可供使用,目前已有超過15萬個的第三方包。相比于R語言、SPSS等語言,Python具有適合大數(shù)據(jù)分析的第三方庫,比如Numpy、Pandas、Matplotlib 、Scipy、scikit-learn等可以實現(xiàn)數(shù)據(jù)統(tǒng)計、數(shù)據(jù)的可視化等功能,從而可以完成不同的數(shù)據(jù)分析任務(wù)。

2.1 Numpy庫——數(shù)據(jù)分析基礎(chǔ)工具

Numpy是一個科學(xué)計算庫,是Python處理數(shù)組和矢量運算的工具包,是進(jìn)行高性能計算和數(shù)據(jù)分析的基礎(chǔ)。Numpy對于矢量運算不僅提供了很多方便的接口,而且其效率比用戶手動使用Python語言實現(xiàn)數(shù)組運算要更高。雖然Numpy庫本身沒有提供很多高級的數(shù)據(jù)分析功能,但是學(xué)習(xí)和使用Numpy庫將有助于數(shù)據(jù)分析工具的使用。

2.2 Pandas庫——數(shù)據(jù)分析專用庫

Pandas是一個構(gòu)建在Numpy之上的高性能數(shù)據(jù)分析庫,它能夠?qū)?shù)據(jù)進(jìn)行排序、分組、歸并等操作,也能夠求和、求極值、求標(biāo)準(zhǔn)方差等統(tǒng)計計算。Pandas是數(shù)據(jù)分析的專用庫,用來處理結(jié)構(gòu)化的數(shù)據(jù)。數(shù)據(jù)分析的第一步是要從外部獲取數(shù)據(jù),Pandas提供了多種I/O API函數(shù),可以讀取csv、txt等文件,也可以讀取xlsx或 SQL Server數(shù)據(jù)文件等多種類型的文件,如表1所示。

2.3 Matplotlib庫——數(shù)據(jù)可視化工具

Matplotlib是Python最著名的繪圖庫之一,Matplotlib配合Numpy模塊利用,可以實現(xiàn)科學(xué)計算結(jié)果的可視化顯示,所以Matplotlib是Python進(jìn)行數(shù)據(jù)分析的一個非常重要的可視化工具。使用Matplotlib模塊繪圖主要用的是Matplotlib的plot工具包,該工具包提供了與MATLAB類似的繪圖API,封裝了復(fù)雜的繪圖對象結(jié)構(gòu),用戶只需調(diào)用pyplot模塊所提供的函數(shù),使用少量的代碼就可以快速繪制出高質(zhì)量的直方圖、散點圖、柱形圖等二維或三維圖形。直方圖能夠直觀地反映出數(shù)據(jù)的體態(tài)特征[3],圖1 隨機(jī)生產(chǎn)滿足mu為100、sigma為20的正態(tài)分布的10萬個智商數(shù)據(jù)的直方圖。

3 scikit-learn實現(xiàn)數(shù)據(jù)分析

scikit-learn是一個構(gòu)建在Numpy、Scipy、Matplotlib之上的機(jī)器學(xué)習(xí)庫,所支持的算法、模型均是經(jīng)過廣泛驗證的,涵蓋了分類、回歸、聚類三個大類,還提供了數(shù)據(jù)降維、模型選擇與數(shù)據(jù)預(yù)處理等[2]。下面說明如何使用scikit-learn實現(xiàn)Logistic回歸的基本過程。

3.1算法設(shè)計

Logistic回歸是一種廣義的線性分析模型,實質(zhì)上是以回歸的形式解決分類問題的。假設(shè)特征向量x有n個屬性值x=(x1,x2,…,xn),線性分析模型由各個屬性的線性組合得到預(yù)測函數(shù),即:

f(x)=w1x1+w2x2+…+wnxn+b

表示成向量的形式,即:

f(x)=wTx +b

其中,w是權(quán)重,b是偏值。線性模型的算法則為w和b的學(xué)習(xí)。線性回歸的任務(wù)就是通過訓(xùn)練集來學(xué)習(xí)和得到w和b。使得對訓(xùn)練集的預(yù)測值和真實的回歸目標(biāo)值之間的均方誤差最小。

對于給定的樣例數(shù)據(jù)點(x,y),若線性模型對給定樣本點的預(yù)測值f(x)接近于真實值y,就形成了線性回歸模型。即:

y=wTx +b

線性回歸模型表征了輸入x與輸出y之間的一種線性關(guān)系。

3.2使用sklearn自帶的iris數(shù)據(jù)集進(jìn)行訓(xùn)練和預(yù)測

如果沒有安裝Python科學(xué)計算包,建議使用安裝和使用Anaconda。Anaconda是一款非常優(yōu)秀的Python集成開發(fā)環(huán)境,集成了近200個數(shù)據(jù)科學(xué)相關(guān)的第三方包,用于大規(guī)模數(shù)據(jù)處理、預(yù)測分析和科學(xué)計算的Python發(fā)行版,還可以在它上面構(gòu)建人工智能的開發(fā)環(huán)境。下載地址如下:

https://www. anaconda.com/download/

本文中的代碼均在Anaconda下調(diào)試通過。

1)導(dǎo)入所需要的模塊

#導(dǎo)入numpy模塊

import numpy as np ?#np是numpy的別名

#導(dǎo)入sklearn中的linear_model和datasets模塊

from sklearn import linear_model,datasets

2)導(dǎo)入數(shù)據(jù),并將數(shù)據(jù)切分為訓(xùn)練集和測試集

Sklearn提供了從樣本數(shù)據(jù)中創(chuàng)建訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù)的方法。自帶了一些案例數(shù)據(jù),它位于Python安裝目錄下\lib\site-package\sklearn\datasets子目錄下,為這些數(shù)據(jù)提供了專門的訪問接口。

#創(chuàng)建數(shù)據(jù)

iris=datasets.load_iris()

X=iris.data

y=iris.target

X_train,X_test,y_train,y_test=train_test_split(X,y,random_state=1)

3)選擇模型,進(jìn)行訓(xùn)練和預(yù)測

scikit-learn中的Logistic回歸在sklearn的Linear_model模塊中的LogisticRegression類中實現(xiàn)的,主要是實現(xiàn)二分類的問題。

log_reg=linear_model. LogisticRegression()

lr=log_reg.fit(X_train,y_train)

log_reg.predict(X_test)

說明:scikit-learn總是把從訓(xùn)練集數(shù)據(jù)中得到的值保存在以下劃線結(jié)束的屬性中,這是為了將其與用戶設(shè)置的參數(shù)區(qū)分開來。w(權(quán)重或系數(shù))被保存在coef_屬性中,而b(偏移)被保存在intercept_屬性中。

4 結(jié)束語

綜上分析,Python語法簡潔而清晰,具有豐富和強(qiáng)大的類庫。Python可以說是無所不能,廣泛應(yīng)用于web編程、爬蟲、人工智能等,同時它能夠很方便地和其他語言制作的模塊輕松地融合在一起,所以又被俗稱為“膠水語言”。使用python進(jìn)行數(shù)據(jù)分析是十分便利且高效,因此它被認(rèn)為是非常優(yōu)秀的數(shù)據(jù)分析工具。

參考文獻(xiàn):

[1] 陳紅波,劉順祥.數(shù)據(jù)分析從入門到進(jìn)階[M].北京:機(jī)械工業(yè)出版社,2019.

[2] 呂云翔,李伊琳,王肇一.Python數(shù)據(jù)分析實戰(zhàn)[M].北京:清華大學(xué)出版社,2019.

[3] 江紅,余青松.Python程序設(shè)計與算法基礎(chǔ)教程[M].北京:清華大學(xué)出版社,2019.

[4] 徐玉芳,蘇斌.Python語言特點及其在機(jī)器學(xué)習(xí)中的應(yīng)用[J].計算機(jī)產(chǎn)品與流通,2019(12):142.

【通聯(lián)編輯:王力】

猜你喜歡
數(shù)據(jù)分析大數(shù)據(jù)
Excel電子表格在財務(wù)日常工作中的應(yīng)用
淺析大數(shù)據(jù)時代背景下的市場營銷策略
新常態(tài)下集團(tuán)公司內(nèi)部審計工作研究
中國市場(2016年36期)2016-10-19 04:31:23
淺析大數(shù)據(jù)時代對企業(yè)營銷模式的影響
基于大數(shù)據(jù)背景下的智慧城市建設(shè)研究
科技視界(2016年20期)2016-09-29 10:53:22
主站蜘蛛池模板: 亚洲精品无码av中文字幕| 亚洲成网777777国产精品| 国产在线日本| 精品国产自| 91福利片| 99中文字幕亚洲一区二区| 日本欧美中文字幕精品亚洲| 免费A级毛片无码无遮挡| 最近最新中文字幕免费的一页| 亚洲精品天堂在线观看| 国产欧美在线观看视频| 婷婷伊人五月| 欧美在线综合视频| 国产欧美一区二区三区视频在线观看| 精品国产网| 亚洲第一精品福利| 在线高清亚洲精品二区| 蜜桃臀无码内射一区二区三区| 第一区免费在线观看| 青青草欧美| 免费一级毛片不卡在线播放| 久久久久久久久18禁秘| 国产精品久久久久久久伊一| 中文字幕乱妇无码AV在线| 国产精品妖精视频| 成人午夜久久| 日日碰狠狠添天天爽| 亚洲色图欧美激情| 她的性爱视频| 欧美福利在线| 日韩在线中文| 日韩专区欧美| 99ri精品视频在线观看播放| 婷婷久久综合九色综合88| 亚洲中文字幕av无码区| 国内丰满少妇猛烈精品播| 国产在线观看高清不卡| 最新亚洲人成无码网站欣赏网| 亚洲精品无码AⅤ片青青在线观看| 亚洲色精品国产一区二区三区| 欧美一区精品| 男女性色大片免费网站| 久久永久精品免费视频| 国产精品jizz在线观看软件| 国产靠逼视频| 亚洲成人精品在线| 自拍偷拍欧美日韩| a欧美在线| 在线另类稀缺国产呦| 波多野结衣视频网站| 天堂av高清一区二区三区| 中文字幕无线码一区| 精品国产美女福到在线不卡f| 精品国产毛片| 综合成人国产| 国产精选自拍| 成人一级黄色毛片| 国产永久在线视频| 免费国产黄线在线观看| 中文字幕免费在线视频| 国产综合色在线视频播放线视| 亚洲AⅤ综合在线欧美一区| 免费观看精品视频999| 亚洲swag精品自拍一区| 久久国产亚洲欧美日韩精品| 精品国产一二三区| 亚洲欧美国产视频| 亚洲第一页在线观看| 国产精品播放| 国内精自视频品线一二区| 99热免费在线| 91破解版在线亚洲| 99久久人妻精品免费二区| 久久黄色小视频| 国产美女精品在线| 亚洲91在线精品| 日韩av无码DVD| 婷婷午夜天| 激情影院内射美女| 日韩精品久久无码中文字幕色欲| AV网站中文| 真人免费一级毛片一区二区|