直方圖進行數(shù)據(jù)離散化實驗_第1頁
直方圖進行數(shù)據(jù)離散化實驗_第2頁
直方圖進行數(shù)據(jù)離散化實驗_第3頁
直方圖進行數(shù)據(jù)離散化實驗_第4頁
直方圖進行數(shù)據(jù)離散化實驗_第5頁
已閱讀5頁,還剩5頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、實驗題目: 直方方圖進行數(shù)數(shù)據(jù)離散化化 1 實驗目目的直方圖使用用分箱來近近似數(shù)據(jù)分分布,是數(shù)數(shù)據(jù)規(guī)約的的一種形式式。通過本本實驗,需需要掌握不不同直方圖圖的數(shù)學原原理和構造方法法。同時,掌掌握使用不不同直方圖圖對數(shù)據(jù)進進行離散化化的原理和和方法。最最后,利用用實驗數(shù)據(jù)據(jù)實現(xiàn)一種種直方圖并并進行評估估。2 實驗步步驟2.1 算算法原理首先,假設設有N個自自然數(shù)的集集合U=x | xN,其中中最大值為為。(1)等寬寬度直方圖圖對數(shù)據(jù)進進行分箱。假設按等等寬度的方方法進行分分箱(寬度度w=1),則則對于N個個數(shù)據(jù),按按其值分別別放入到相相應的箱中中,箱子的的數(shù)目。設每個箱箱中的統(tǒng)計計數(shù)據(jù)為,按按照

2、坐標值值/頻率對對()表示在二二維坐標上上,則可以以得到該組組數(shù)據(jù)的單單桶直方圖圖。其中,。一般情況況下,為了了進一步壓壓縮數(shù)據(jù),通通常進行數(shù)數(shù)據(jù)分箱時時,每一個個桶代表的的是連續(xù)的的屬性值,即即取寬度。在這種分分箱方法下下,分箱數(shù)數(shù)目。則按照公公式,其中,令令所得到的值值/頻率對對,的寬度為為q的直方方圖,即為為常見的等等寬度直方方圖。(2)等深深度直方圖圖與等寬度度直方圖相相比,等深深度直方圖圖僅僅是在在創(chuàng)建數(shù)據(jù)據(jù)桶時與其其不同。等等深度直方方圖的數(shù)據(jù)據(jù)桶的創(chuàng)建建思想是:使得每個個桶的頻率率粗略的為為常數(shù),即即每個桶中中包含大致致相當?shù)臉訕颖緮?shù)據(jù)數(shù)數(shù)目。設分箱的的數(shù)目為KK,則對于于每一個

3、桶桶,有,其其中。只有在這這種情況下下,才滿足足大致相當當。所要求求的是每一一個桶的邊邊界,。求邊界的的過程:首首先對該集集合U進行行排序(由由小到大),由由于每桶的的數(shù)目相等等,所以每每間隔c個個數(shù)據(jù),取取一次數(shù)據(jù)據(jù)值,即為一一個有效的的邊界值。對于排序序后的序列列,有。所得到的的二維值對對,即是等等深度直方方圖。2.2 算算法步驟用戶輸入數(shù)數(shù)據(jù)分桶的的數(shù)目K,然然后按如下下步驟計算算:(1)對樣樣本數(shù)據(jù)進進行排序(2)計算算寬度w和和c(2)對數(shù)數(shù)據(jù)進行掃掃描和計算算等寬度直直方圖的數(shù)數(shù)目值和等等深度直方方圖的邊界界2.3 程程序流程圖圖開始獲取分桶數(shù)目k讀入文件數(shù)據(jù)計算桶寬度w逐個掃描數(shù)

4、據(jù),統(tǒng)計數(shù)目結束圖1 等寬寬度直方圖圖流程圖在圖1中中,數(shù)據(jù)的的分桶數(shù)目目是用戶輸輸入的數(shù)據(jù)據(jù),預先由由用戶設定定。樣本數(shù)數(shù)據(jù)存放在在文本文件件eggss.txtt中,由程程序運行時時讀入。在在實驗中,通通過對樣本本數(shù)據(jù)的考考察,計算算桶寬度ww的方法是是。統(tǒng)計結果果存放在數(shù)數(shù)組中,返返回統(tǒng)計結結果。獲取分桶數(shù)目k讀入文件數(shù)據(jù)數(shù)據(jù)順序排序計算桶的深度p,每個桶的數(shù)目c開始結束間隔c個數(shù)目在數(shù)據(jù)中一個值,作為邊界值圖2 等深深度直方圖圖流程圖在圖2中,數(shù)數(shù)據(jù)的分桶桶數(shù)目是用用戶輸入的的數(shù)據(jù),預預先由用戶戶設定。樣樣本數(shù)據(jù)存存放在文本本文件egggs.ttxt中,由由程序運行行時讀入。每個桶的數(shù)據(jù)

5、量c的計算算公式,NN表示原始始數(shù)據(jù)的數(shù)數(shù)據(jù)個數(shù)。邊界計算算結果存放放在數(shù)組ee中,返回回邊界數(shù)組組,計算過過程結束。3 實驗結結果分析圖3 等寬寬度直方圖圖(K=110)統(tǒng)計計結果圖4 等寬寬度直方圖圖(K=220)統(tǒng)計計結果圖5 等深深度直方圖圖(K=110)統(tǒng)計計結果圖6 等深深度直方圖圖(K=220)統(tǒng)計計結果上面的圖圖分別表示示K=100和K=200的情況下下eggss.txtt中數(shù)據(jù)的的等寬度和和等深度直直方圖的統(tǒng)統(tǒng)計結果。直方圖的的使用是為為了離散化化數(shù)據(jù)。在在實驗中,使使用每個桶桶的中值來來代表該桶桶中數(shù)據(jù)的的離散結果果。在K=10的情情況下:使用等寬寬度直方圖圖,樣本數(shù)數(shù)據(jù)離

6、散值值為550,11650,22750,33850,44950,66050,77150,88250,99350,1104500;使用等等深度直方方圖,樣本本數(shù)據(jù)的離離散值為3,43,1882,4003,6443,9881,13378,11803,22365,6770。在K=20的情況下,使用等寬度直方圖,樣本數(shù)據(jù)離散值為275,825,1375,1650,1925,2475,3025,3575,4125,4675,5225,5775,6325,6875,7425,7975,8525,9075,9625,10175,10725;使用等深度直方圖,樣本數(shù)據(jù)的離散值為0,2,17,50,108,19

7、9,308,412,539,683,842,1051,1221,1368,1552,1776,2035,2338,2742,6915。實驗表明:對于采用不同的直方圖和不同的桶數(shù)目K,得到不同的離散化結果。4 實驗結結論對于上述述的四種離離散化結果果,如何來來判定哪種種離散化數(shù)數(shù)據(jù)的效果果更好呢?一般的,離離散后的數(shù)數(shù)據(jù)越接近近樣本原始始數(shù)據(jù),則則效果越好好。數(shù)據(jù)離離散化后,與與原始數(shù)據(jù)據(jù)肯定存在在差異,一一般用誤差差度量這種種差異大小小。在這里里,定義平平均相對誤誤差和最大大相對誤差差來表示離離散數(shù)據(jù)逼逼近原始樣樣本數(shù)據(jù)的的程度,作作為離散化化的評判標標準。平均相對對誤差E定定義如下:,其中,

8、和和分別表示示第i個值值的離散值值和真實值值,N表示示數(shù)據(jù)總量量。最大相對對誤差M定定義如下:,其中,N的定定義和平均均相對誤差差中的相同同。對于K=10,根根據(jù)等寬度度和等深度度的方法,可可以得到兩兩組不同的的離散值TT1和T22。對于這這兩組離散散值,通過過計算,得得到平均相相對誤差EE1=8.5384418,EE2=0.3997769,最最大相對誤誤差M1=549.00,MM2=2.00。由上述兩兩組比較可可得,在對對該樣本數(shù)數(shù)據(jù)進行離離散化時,采采用等寬度度直方圖的的方法,效效果更好。對于等寬寬度直方圖圖,當K=10和KK=20的的情況下,可可得到兩組組不同的離離散值T11和T2。通過

9、上述述方法計算算可得,平均相對對誤差E11=8.55384118,E22=4.22612110,最大大相對誤差差M1=5549.000,M22=2744.00。對于上述述兩組數(shù)據(jù)據(jù),對于采采用直方圖圖進行數(shù)據(jù)據(jù)離散化,在在桶數(shù)目多多的情況下下,誤差較較小。當KK=N時,數(shù)數(shù)據(jù)即為原原始數(shù)據(jù),此此時,誤差差E和M都都為0。但但是這樣的的數(shù)據(jù)離散散化時無意意義的,在在比較K不不同時,還還需要考慮慮另一項指指標:數(shù)據(jù)據(jù)壓縮比率率。在實驗中中,對于每每個桶中的的數(shù)據(jù),取取離散值的的方法是取取中值。如如果改變取取值方法,比比如用桶內內樣本的平平均值來表表示離散值值,則會得得到不同的的E和M,但但是結論不

10、不會改變。5 實驗心心得體會1、使用程程序讀入文文本數(shù)據(jù)方方法讀入數(shù)據(jù)據(jù)問題,使使用的數(shù)據(jù)據(jù)是從daat文件轉轉換過來的的txt文文件,每行行的數(shù)據(jù)都都是換行后后的,所以以可以直接接通過geetlinne函數(shù)獲獲取每行值值,然后使使用atooi函數(shù)轉轉換為整型型數(shù)據(jù)。2、為何在在實驗結論論中的評價價標準不使使用絕對誤誤差?絕對誤差差對于離群群點敏感,不不能代表整整體逼近效效果。3、對于一一簇樣本數(shù)數(shù)據(jù),應采采用何種直直方圖劃分分更為合理理?對于數(shù)數(shù)據(jù)的劃分分,在實驗驗中是采用用用戶的一一個預設值值,可以通通過數(shù)學的的方法獲取取一個較為為良好的KK值嗎? 參考文獻 1 數(shù)據(jù)挖掘掘:概念與與技術/

11、(加加)韓家煒煒,(加)坎坎伯(Kaamberr,M.)著;范明明等譯.-北京:機機械工業(yè)出出版社,22001.8附錄(源代代碼)/讀入數(shù)數(shù)據(jù)BOOL CDraawHisstogrramDooc:RReadFFile(CStrring fileePathh)fstrream infiile(eggss.txtt);if(!infiile)retturn FALSSE;charr ch_num10;/innt i=0;/innfilee.seeekgwhille(!iinfille.eoof() )inffile.getlline(ch_nnum,ssizeoof(chh_numm);vt_da

12、taa_orgg.pussh_baack(aatoi(ch_nnum);infiile.cclosee();retuurn TTRUE;/等寬度度直方圖統(tǒng)統(tǒng)計void CDraawHisstogrramDooc:WWidthhEquaalCatte(veectorr vtt,intt minn,intt maxx,intt numm)if(mmax=0 | numm=0)retturn;int inteervall=maxx/(innt)nuum;/申請請數(shù)組,初初始化為00int * arrray=new intnum;for(int pos=0;poosnuum;poos+)arrrayp

13、pos=0;for(int i=0;i(iint)vvt.siize();i+)if(vtii/inntervval vtt_datta_wiidth.assiign(aarrayy,arrray+nnum);deleete arrray;/等深度度直方圖計計算邊界void CDraawHisstogrramDooc:DDepthhEquaalCatte(veectorr vtt,intt minn,intt maxx,intt numm)if(mmax=0 | numm=0)retturn;/首先先排序,然然后查找值值,默認升升序sortt(vt.begiin(),vt.eend();int

14、 sizee=(innt)vtt.sizze();int inteervall=(innt)vtt.sizze()/num;int i=inntervval;for(int j=0;jvvt_daata_ddepthh.pussh_baack(vvti);i += inntervval;thiss-vtt_datta_deepth.pushh_bacck(vttsizze-1);/直方圖圖繪制void CDraawHisstogrramViiew:DrawwEquaalWiddthHiistoggram(int x_siize)/thhis-OnInnitiaalUpddate();/thhi

15、s-Invaalidaate();CDraawHisstogrramDooc* ppDoc = GeetDoccumennt();ASSEERT_VVALIDD(pDooc);CCliientDDC dcc(thiis);vecttor:iteeratoor pttr;int i=0;for(ptr=pDocc-vtt_datta_wiidth.begiin();ptr!=pDooc-vvt_daata_wwidthh.endd();pptr+)/計計算矩形區(qū)區(qū)域CReect rrect(thiss-orrgPoiint.xx + ii*x_ssize,thiss-orrgPoiint.yy-

16、(pDDoc-vt_ddata_widtthi)/thhis-y_raatio,thiss-orrgPoiint.xx+ (ii+1)*x_siize ,thiss-orrgPoiint.yy);CBrrush * myyBrussh=neew CBBrushh;myBBrushh-CrreateeSoliidBruush(RRGB(ii*45%255,i*755%2555,i*55);/填填充區(qū)域dc.FilllRectt(&reect,mmyBruush);i+;/顯示示統(tǒng)計值CStrring str;for(int j=0;jvt_ddata_widtth.siize();j+)strr

17、.Forrmat(%d,pDooc-vvt_daata_wwidthhj);dc.TexttOut(orgPPointt.x+XX_LENNGTH,orgPPointt.y-YY_LENNGTH+20*jj,strr);void CDraawHisstogrramViiew:DrawwEquaalDeppthHiistoggram()/thhis-OnInnitiaalUpddate();CDraawHisstogrramDooc* ppDoc = GeetDoccumennt();ASSEERT_VVALIDD(pDooc);CCliientDDC dcc(thiis);vecttor:it

18、eeratoor pttr;int i=0;if(ppDoc-vt_dataa_deppthppDoc-vt_dataa_deppth.ssize()-1/thiis-xx_rattioXX_LENNGTH)thiis-IInvallidatte();MesssageeBox(坐標和和數(shù)據(jù)不符符合!,錯誤,MB_OK | MB_ICONNERROOR);retturn;/最后后一個數(shù)是是終點邊界界for(ptr=pDocc-vtt_datta_deepth.begiin();ptr!=pDooc-vvt_daata_ddepthh.endd();pptr+)/繪繪制0-vvt_daata_ddepthh0if(i=00)CRRect rectt(thiis-oorgPooint.x,thhis-orgPPointt.y-2200,tthis-orggPoinnt.x + pDDoc-vt_ddata_deptth0/thiis-xx_rattio,tthis-orggPoinnt.y);CBBrushh * mmyBruush=nnew

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論