国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

R語言在數(shù)據(jù)預(yù)處理中的開發(fā)應(yīng)用

2012-10-08 12:12:26肖穎為
關(guān)鍵詞:數(shù)據(jù)項(xiàng)數(shù)據(jù)挖掘預(yù)處理

肖穎為,葛 銘

(杭州電子科技大學(xué)信息與控制研究所,浙江杭州310018)

0 引言

目前數(shù)據(jù)的主要研究方向集中在挖掘技術(shù)和算法領(lǐng)域,但現(xiàn)實(shí)中的數(shù)據(jù)錯(cuò)綜復(fù)雜,對數(shù)據(jù)的業(yè)務(wù)理解因人而異,數(shù)據(jù)源不統(tǒng)一,系統(tǒng)故障,操作不規(guī)范等等原因數(shù)據(jù)將不可避免的存在缺失數(shù)據(jù)、冗余數(shù)據(jù)、不一致數(shù)據(jù)等情況,這些“臟數(shù)據(jù)”將極大影響整個(gè)數(shù)據(jù)挖掘的建模過程導(dǎo)致錯(cuò)誤的模型[1]。大量實(shí)踐證明,在數(shù)據(jù)挖掘系統(tǒng)中,數(shù)據(jù)前期的理解和預(yù)處理階段要花費(fèi)60%左右的時(shí)間,要得到一個(gè)準(zhǔn)確的模型,高質(zhì)量的數(shù)據(jù)是必不可少的,所以在建模前期如何提取數(shù)據(jù)元信息,如何與專家和業(yè)務(wù)人員溝通來理解分析數(shù)據(jù)是非常重要的。而統(tǒng)計(jì)方法是強(qiáng)有力的診斷分析工具,能以此來促進(jìn)挖掘模型中的參數(shù)估計(jì)、變量的假設(shè)檢驗(yàn)和其他此類方法的發(fā)展[2],為此,本文提出引入目前在統(tǒng)計(jì)學(xué)領(lǐng)域發(fā)展最快的R語言工具來輔助對數(shù)據(jù)的理解和預(yù)處理,參考業(yè)內(nèi)公認(rèn)的商業(yè)數(shù)據(jù)挖掘模型CRISP-MD,搭建了一個(gè)簡單的分析流程,并使用某家電信公司的客戶數(shù)據(jù)進(jìn)行測試分析,并取得了良好的分析效果。

1 R語言特征

R是一種為統(tǒng)計(jì)計(jì)算和圖形顯示而設(shè)計(jì)的語言環(huán)境,是貝爾實(shí)驗(yàn)室的Rick Becker,John Chambers和Allan Wilks開發(fā)的S語言的一種實(shí)現(xiàn)。其主要特點(diǎn)是具備一系列連貫而又完整的數(shù)據(jù)分析中間工具,擁有一整套數(shù)組和矩陣操作運(yùn)算符能有效地處理保存數(shù)據(jù),其圖形統(tǒng)計(jì)功能可以對數(shù)據(jù)直接進(jìn)行分析和顯示,加上R是一種面向?qū)ο蟮目删幊陶Z言,和其它編程語言、數(shù)據(jù)庫之間有很好的接口[3]。R還是免費(fèi)開源軟件,并且有強(qiáng)大的社區(qū)資源,提供了非常豐富的程序包,有很多專家、貢獻(xiàn)者提供學(xué)習(xí)指導(dǎo)、前沿領(lǐng)域的探討。

現(xiàn)有的ELT工具能夠提供一般化的預(yù)處理功能,但靈活性不足,而獨(dú)自開發(fā)ELT工具又要面臨開發(fā)時(shí)間長,費(fèi)用過高的問題,引入R來分析數(shù)據(jù)并且實(shí)現(xiàn)數(shù)據(jù)預(yù)處理可以靈活地定制需要的數(shù)據(jù)來實(shí)現(xiàn)挖掘,R有強(qiáng)大函數(shù)拓展包和圖像展示功能,可以方便快捷地提供數(shù)據(jù)信息并且進(jìn)行數(shù)據(jù)處理,這個(gè)過程提供了良好的互動(dòng)環(huán)境使得業(yè)務(wù)人員和專家的參與,為之后的模型設(shè)計(jì)和選擇提供了良好的支持。目前R在統(tǒng)計(jì)學(xué)領(lǐng)域和數(shù)字分析領(lǐng)域是增長最快的工具,在國外被廣泛應(yīng)用,在國內(nèi)尚處于發(fā)展期,按如此趨勢未來R的應(yīng)用面將越來越廣。

2 數(shù)據(jù)理解和數(shù)據(jù)準(zhǔn)備功能設(shè)計(jì)

本文提出的一個(gè)思路是將數(shù)據(jù)預(yù)處理的一系列方法流程化,通過數(shù)據(jù)輸入,數(shù)據(jù)反饋輸出來進(jìn)行互動(dòng)式的數(shù)據(jù)理解和數(shù)據(jù)準(zhǔn)備,這可以為真正需要進(jìn)行的數(shù)據(jù)的預(yù)處理提供決策支持。流程圖如圖1所示:

圖1 數(shù)據(jù)預(yù)處理流程圖

2.1 數(shù)據(jù)清洗

空值處理,統(tǒng)計(jì)每個(gè)屬性空值的個(gè)數(shù)和占總樣本數(shù)的百分比,統(tǒng)計(jì)每個(gè)缺失樣本的缺失屬性個(gè)數(shù)并且按大到小排列,一般來說若屬性空值個(gè)數(shù)占整體樣本數(shù)的比例比較大時(shí)可以考慮刪除此屬性,而各屬性空值過多的樣本也可以考慮刪除。

檢測重復(fù)值,主要針對離散型變量,統(tǒng)計(jì)每個(gè)離散因子的出現(xiàn)次數(shù)并畫出整體的直方圖,統(tǒng)計(jì)因子占整體樣本數(shù)的百分比。

檢測異常值,對于離散變量來說異常值可能是出現(xiàn)次數(shù)比較小或者特別大的一些因子這需要根據(jù)具體業(yè)務(wù)來判斷。對于單一連續(xù)變量用K均值的聚類算法自動(dòng)識別可能的異常值,K均值算法實(shí)現(xiàn)如下:

首先從n個(gè)數(shù)據(jù)中任意選擇k個(gè)作為初始聚類中心;對于剩下的其他數(shù)據(jù),根據(jù)它們與聚類中心的距離(相似度),分別將其分配到距離最近的聚類中心所代表的聚類中;然后重新計(jì)算每個(gè)新聚類的聚類中心(所有該類的均值);不斷重復(fù)這個(gè)過程直到標(biāo)準(zhǔn)測度函數(shù)開始收斂為止。一般會(huì)采用均方差作為標(biāo)準(zhǔn)的測度函數(shù),具體定義如下[4]:

式中,E為所有數(shù)據(jù)對象的均方差之和,p為代表對象空間的一點(diǎn),mi為聚類ci的均值。

2.2 數(shù)據(jù)消減

泛化處理,所謂泛化處理就是用更抽象的概念來取代低層次或數(shù)據(jù)層的數(shù)據(jù)對象,如年齡屬性,可以映射到更高層次概念,如:青年、中年、老年。為這里需要設(shè)計(jì)一個(gè)映射,能把低層次的數(shù)據(jù)對象映射到高層次的概念上來。

維規(guī)約,即為屬性消減,對于相關(guān)性過高或者提供信息量過少的屬性可以考慮消除,這樣可以提高數(shù)據(jù)挖掘算法的效率,節(jié)約時(shí)間,提高準(zhǔn)確率。因此除了引入統(tǒng)計(jì)學(xué)中的相關(guān)性檢驗(yàn)外還加入基于熵的離散化方法來對屬性進(jìn)行維規(guī)約分析如[5]:

式中,A1和A2為A的一個(gè)劃分且分別滿足條件:A1<T與A2>T。熵函數(shù)可以根據(jù)所給集中的不同類別數(shù)據(jù)行分布情況計(jì)算獲得。如給定m個(gè)不同類別,A1的熵就是:

式中,pi為Ai中類別i的出現(xiàn)概率。該值可以通過A中類別i的行數(shù)除以A1中數(shù)據(jù)行的總數(shù)而得到。Ent(A2)的值也可以類似方法計(jì)算獲得。

2.3 數(shù)據(jù)轉(zhuǎn)換

類型判斷,一般來說數(shù)據(jù)可以分成間隔、二值、符號、順序、比例5種類型來進(jìn)行分析處理,間隔數(shù)值屬性就是基本呈直線比例的連續(xù)測量值。典型的間隔數(shù)值有:重量、高度和溫度等。一個(gè)二值變量僅取0或1值,其中0代表(變量所表示的)狀態(tài)不存在,而1則代表相應(yīng)的狀態(tài)存在。符號變量是二值變量的一個(gè)推廣。符號變量可以對兩個(gè)以上的狀態(tài)進(jìn)行描述。例如:顏色變量就是一個(gè)符號變量,它可以表示五種狀態(tài),即紅、綠、籃、粉紅和黃色。一個(gè)離散順序變量與一個(gè)符號變量相似,不同的是(對應(yīng)N個(gè)狀態(tài)的)的N個(gè)順序值是具有按照一定順序含義的。一個(gè)比例數(shù)值變量就在非線性尺度上所獲得的正測量值。對屬性類型有個(gè)正確的判斷將極大方便數(shù)據(jù)挖掘算法的選?。?]。

約束,對數(shù)據(jù)處理來說,需要引入業(yè)務(wù)理解的內(nèi)容,能夠通過業(yè)務(wù)人員和專家對數(shù)據(jù)進(jìn)行取舍,為此,對于每個(gè)屬性引入限制條件對數(shù)據(jù)進(jìn)行約束達(dá)到符合現(xiàn)實(shí)的目的。

規(guī)格化,規(guī)格化將一個(gè)屬性取值范圍設(shè)在一個(gè)特定范圍之內(nèi),以消除數(shù)值型屬性因可能存在的大小不一的情況而造成結(jié)果偏差。

2.4 數(shù)據(jù)理解

屬性關(guān)系,對于沒有缺失值的離散變量進(jìn)行做交叉表進(jìn)行Pearson χ2檢驗(yàn)分析在置信度為0.05的情況下判斷屬性之間是否存在相關(guān)性,而對于沒有缺失值連續(xù)變量做相關(guān)系數(shù)矩陣分析相關(guān)性。

分布特征,對于離散變量來說統(tǒng)計(jì)因子個(gè)數(shù)和統(tǒng)計(jì)量并做直方圖可以快速發(fā)現(xiàn)出現(xiàn)次數(shù)最多的點(diǎn)及可能存在的異常因子,而對于連續(xù)變量求其平均值,中位數(shù),眾數(shù),方差,標(biāo)準(zhǔn)差,變異系數(shù),峰度系數(shù),偏度系數(shù)等變量信息。

通過R對每個(gè)數(shù)據(jù)項(xiàng)(變量)實(shí)現(xiàn)上述基本分析,對于每個(gè)數(shù)據(jù)項(xiàng)都建立一個(gè)元數(shù)據(jù)列表綜合上述功能的所有統(tǒng)計(jì)信息,從其數(shù)據(jù)特征到與其他變量可能存在的相關(guān)性等信息都可以通過這個(gè)列表查看,同時(shí)配上可視化圖來理解數(shù)據(jù)項(xiàng)。

3 對于電信業(yè)客戶數(shù)據(jù)的分析

主要抽取了電信數(shù)據(jù)的2張表組成探索型數(shù)據(jù)集:

賬戶表。存放所有客戶的基本信息,包括13個(gè)數(shù)據(jù)項(xiàng),其中與分析主題有關(guān)的有8個(gè)數(shù)據(jù)項(xiàng):客戶ID,城市,省份,郵編,激活時(shí)間,賬戶收支,出生時(shí)間,信用等級;

賬單表。記錄客戶每月賬單情況,包括5個(gè)數(shù)據(jù)項(xiàng):客戶ID,賬單日期,通話費(fèi),增值業(yè)務(wù)費(fèi),互聯(lián)網(wǎng)使用費(fèi),總費(fèi)用;

數(shù)據(jù)經(jīng)過處理后,可以得到一系列數(shù)據(jù)項(xiàng)的元數(shù)據(jù)屬性。其中在賬戶表中的賬戶收支中,一共822個(gè)數(shù)據(jù)。在數(shù)據(jù)清洗階段,通過編寫的空值統(tǒng)計(jì)函數(shù)得到此數(shù)據(jù)項(xiàng)有6個(gè)空白值,但占總數(shù)量的0.007,可以考慮刪除。

用R語言開發(fā)的異常值處理模塊,可發(fā)現(xiàn)可能存在的異常值,主要通過聚類分析方法處理每個(gè)變量;在重復(fù)值方面,賬戶為零出現(xiàn)的次數(shù)最多有715次,其他重復(fù)值出現(xiàn)次數(shù)較少,結(jié)合具體業(yè)務(wù)來說并無特別發(fā)現(xiàn)。

在數(shù)據(jù)消減方面,將出生時(shí)間進(jìn)行數(shù)據(jù)清洗后,轉(zhuǎn)化為青年,中年,老年3個(gè)等級來進(jìn)行分析,而通過信息熵分析發(fā)現(xiàn)城市、省份、郵編對信用等級影響很小可以考慮規(guī)約到特征變量省份中來。數(shù)據(jù)消減流程全用R語言代碼編寫的函數(shù)實(shí)現(xiàn),相比于Excel和數(shù)據(jù)庫處理數(shù)據(jù)清洗流程,R實(shí)現(xiàn)的速度更快更靈活,可復(fù)用性也強(qiáng)。

在數(shù)據(jù)轉(zhuǎn)換中,根據(jù)實(shí)際業(yè)務(wù)情況,可以判斷分析出屬性的類型,設(shè)定相關(guān)約束,排除些超過約束的樣本,對連續(xù)數(shù)據(jù)的屬性進(jìn)行規(guī)格化處理以便為之后數(shù)據(jù)挖掘算法服務(wù)。

在數(shù)據(jù)理解階段,通過前面一系列的處理,通過R語言編寫的程序包可以十分便捷的觀察樣本與樣本間的關(guān)系,變量與變量間的關(guān)系,可能存在的分布特征。

4 結(jié)束語

R工具的優(yōu)點(diǎn)在于靈活性,可以快速地根據(jù)具體情況來增加功能,對于數(shù)據(jù)挖掘來說是個(gè)強(qiáng)大的數(shù)據(jù)分析工具,本文利用R開發(fā)了前期數(shù)據(jù)理解和準(zhǔn)備階段的輔助分析工具,整合一套自動(dòng)的系統(tǒng)流程工具能夠提供給業(yè)務(wù)人員和專家對數(shù)據(jù)進(jìn)行分析,并且可以根據(jù)具體需求調(diào)整,增減功能使建模過程更加準(zhǔn)確可靠,在之后的開發(fā)中可以根據(jù)實(shí)際需求引入更多的統(tǒng)計(jì)學(xué)方法來支持挖掘任務(wù),如PCA分析、因子分析等,可以拓展的空間非常大。

[1]David Olson,Yong Shi.呂巍譯.商業(yè)數(shù)據(jù)挖掘?qū)д摚跰].北京:機(jī)械工業(yè)出版社,2007:41-42.

[2]劉莉,徐玉生,馬志新.數(shù)據(jù)挖掘中數(shù)據(jù)預(yù)處理技術(shù)綜述[J].甘肅科學(xué)學(xué)報(bào),2003,15(1):117-18.

[3]陳希.基于R語言數(shù)據(jù)挖掘的社交網(wǎng)絡(luò)客戶細(xì)分研究[D].北京:北京郵電大學(xué),2011:34-40.

[4]J.MacQueen.Some methods for classification analysis of multivariate observations[M].Los Angeles:University of California Press,1997:281 -289.

[5]W.Buntine.Learning classification trees.In Artificial Intelligence Frontiers in Statistics[M].London:Chapman&Hall,1993:182-190.

[6]Richard Roiger,Michael Geatz.數(shù)據(jù)挖掘教程[M].北京:清華大學(xué)出版社,2003:1 -8.

猜你喜歡
數(shù)據(jù)項(xiàng)數(shù)據(jù)挖掘預(yù)處理
探討人工智能與數(shù)據(jù)挖掘發(fā)展趨勢
一種多功能抽簽選擇器軟件系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
甘肅科技(2020年19期)2020-03-11 09:42:42
非完整數(shù)據(jù)庫Skyline-join查詢*
基于Python的Asterix Cat 021數(shù)據(jù)格式解析分析與實(shí)現(xiàn)
基于預(yù)處理MUSIC算法的分布式陣列DOA估計(jì)
基于并行計(jì)算的大數(shù)據(jù)挖掘在電網(wǎng)中的應(yīng)用
電力與能源(2017年6期)2017-05-14 06:19:37
淺談PLC在預(yù)處理生產(chǎn)線自動(dòng)化改造中的應(yīng)用
一種基于Hadoop的大數(shù)據(jù)挖掘云服務(wù)及應(yīng)用
絡(luò)合萃取法預(yù)處理H酸廢水
基于自適應(yīng)預(yù)處理的改進(jìn)CPF-GMRES算法
深水埗区| 阜新| 南城县| 德钦县| 海南省| 宁波市| 温宿县| 当涂县| 江安县| 左云县| 绍兴市| 东明县| 夏河县| 黑河市| 樟树市| 宜城市| 上饶市| 远安县| 桐庐县| 石嘴山市| 塘沽区| 吉隆县| 丹江口市| 屏南县| 富川| 吴忠市| 桓台县| 丰城市| 平泉县| 耒阳市| 西藏| 临安市| 德格县| 莫力| 清流县| 宝兴县| 商南县| 新民市| 多伦县| 隆尧县| 临猗县|