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

基于VB與MATLAB混合編程的數據可視化與數據挖掘軟件的研究

2014-12-11 11:43:04謝松周衛李文林楊秦
中國中醫藥圖書情報 2014年2期
關鍵詞:數據挖掘可視化方法

謝松+周衛+李文林+楊秦

摘要:基于VB和MATLAB混合編程技術,在自動分詞系統與共詞分析的基礎上,設計開發了可應用于中醫藥等領域的數據可視化與數據挖掘軟件系統,對346個中醫外用復方的組成成分與主治病癥進行統計分析與數據挖掘,為相關領域的研究提供快捷便利的分析工具。關鍵詞:VB;MATLAB;數據可視化;數據挖掘doi: 10.3969/j.issn.2095-5707.2014.02.003A Research on Data Visualization and Data Mining Software Based on VB and MATLAB Hybrid ProgrammingXie Song, Zhou Wei, Li Wenlin*, Yang Qin(Nanjing University of Traditional Chinese Medicine, Nanjing Jiangsu 210023, China)Abstract: The research designed and developed a data visualization and data mining software which can be applied in Traditional Chinese Medicine(TCM) field based on VB and MATLAB hybrid programming, with the development of automatic segmentation system and co-word analysis. It statistically analyzed composition and effects of 346 TCM compounds for external use, which can be used as a convenient analysis tool in related study field.Key words: VB; MATLAB; data visualization; data mining 數據挖掘可以從大量數據中發現隱藏的特定模式和規律,從而可以為商業活動、科學探索和醫學研究等諸多領域提供必需的信息知識。數據與信息知識之間的巨大差距迫切需要系統地開發數據挖掘工具,幫助實現將大量的數據轉化為知識財富。擁有幾千年文化積淀的傳統中醫藥學積累了豐富的經驗,擁有大量的文獻。中醫藥系統是一個非線性、多維、復雜而龐大的系統,將數據挖掘技術應用于中醫藥領域中的相關數據進行整理、提取和挖掘,可以更好地獲取其中蘊藏的知識精華,加速中醫藥學的前進步伐。VB是Windows環境下最快捷和易用的可視化集成開發工具,通過它可以編寫出具有各種風格且界面友好的軟件產品。MATLAB是一套集數值分析、矩陣運算、信號處理和圖形顯示于一體的高性能數學軟件,計算能力十分突出。由于MATLAB編寫復雜的人基金項目:南京中醫藥大學哲學社會科學基金(11XSK15);南京中醫藥大學青年自然科學基金(11XZR19)第一作者:謝松,助理館員,研究方向:中醫藥數據分析與挖掘。E-mail:phoenixtech@163.com*通訊作者:李文林,研究館員,研究方向:中醫藥數據分析與挖掘。E-mail: njutcmli@126.com機交換界面的功能相對較弱,而VB提供的計算能力和繪圖函數有限。因此,本研究設計在VB環境下調用MATLAB,充分發揮各自的優勢,開發應用于中醫藥領域的數據可視化與聚類分析系統。1 VB與MATLAB混合編程的幾種方法VB與MATLAB進行混合編程,有以下5種方法,分別具體敘述如下:1.1 采用動態數據交換(DDE)技術DDE是在Windows環境下支持客戶/服務器(client/server)計算模式重要技術之一。VB支持DDE客戶端功能,MATLAB提供DDE服務功能。VB應用程序首先通過確定服務器名和主題建立與MATLAB的DDE會話,服務器名和主題的唯一確定了這次會話,在會話期間VB應用程序作為客戶端,MATLAB作為服務器端,客戶端與服務器端可以就確定的條目(Item)交換數據[1]。1.2 采用ActiveX技術ActiveX技術是微軟公司提供的一種用于模塊集成的新的協議,Activex部件是VB工具箱的補充。MATLAB也支持Activex技術,即可以在MATLAB環境下運行其他程序的Activex部件,也可以在其他程序中運行MATLAB的Activex部件。因此,在VB中利用Activex自動化接口可將MATLAB作為VB的一個Activex部件來調用。這樣就可以在VB程序中調用MATLAB的命令,向MATLAB傳送或從MATLAB中接收數據,本研究采用的即為這種方式,在第三節中將詳細說明如何應用ActiveX技術調用MATLAB。1.3 將M文件編譯為DLL文件通過Matcom工具把MATLAB編寫的函數(M文件)編譯為VB可以調用的DLL文件。Matcom是一個從MATLAB到C++的編譯器,它借助C++編譯器將MATLAB下的M文件編譯為可被VB調用的DLL動態鏈接庫或者是獨立的可執行文件。這樣大大提高了程序的運行效率,也降低了對系統資源的占用[2]。1.4 將M文件編譯為EXE文件MATLAB的M文件不能直接在VB中調用,可利用MCC將M文件直接編譯成可執行的EXE文件,然后在VB中聲明3個API函數,最后使用shell命令即可實現VB與MATLAB的無縫集成[3]。1.5 使用MatrixVB插件MatrixVB是MathWorks公司專門為VB提供的編程接口,它實際上是一個內化到VB中的功能豐富的數學函數庫,實現編程也很簡單,在計算機上安裝MatrixVB后,啟動VB,建立一個新的程序,打開工程/引用菜單項,選中Matrix項,就可以在VB直接調用MATLAB函數來進行程序的設計[4]。2 VB通過ActiveX調用MATLAB在VB中創建MATLAB的ActiveX對象后,就可以使用這個對象所包含的各種方法,實現對MATLAB的調用。首先創建ActiveX對象:Dim Mlab as ObjectSet Mlab= CreateObject ("MATLAB. Applica- tion")常用的Mlab.Application 方法有5個。2.1 Execute([in] BSTR Command)方法BSTR表示寬字符串類型,該方法接收字符串命令,將調用MATLAB,執行一條由Command字符串所決定的一條MATLAB命令,同時返回命令的執行情況,如在VB的文本框Text1中輸入MATLAB語句,在命令按鈕中輸入如下程序即可執行查看結果。也可以在VB中將MATLAB語句賦值給變量,然后傳遞給MATLAB執行。Dim Mlab as objectDim Result as stringSet Mlab= CreateObject ("MATLAB.Applica- tion")Cmd= Text1.Textendprint

Result= Mlab.Execute (Cmd)2.2 GetFullMatrix方法GetFullMatrix ([in] BSTR Name, [in] BSTR Workspace, [in, out] SAFEARRAY (double) * pr,[in, out] SAFEARRAY (double) * pi)GetFullMatrix方法將MATLAB中的一個矩陣變量傳送到VB中的一個一維或二維數組中,其中Name指定了MATLAB中的矩陣變量名,Workspace指定了該矩陣所在的MATLAB所在的工作區,pr是VB程序中的實部,pi是VB程序中的虛部。2.3 PutFullMatrix方法PutFullMatrix([in] BSTR Name, [in] BSTR Workspace,[in, out] SAFEARRAY (double) * pr,[in, out] SAFEARRAY (double) * pi)PutFullMatrix方法是將VB程序中的一個一維或二維數組傳遞到指定的MATLAB空間,各參數的意義和調用方法與GetFullMatrix方法類似。2.4 Void Minimize Command Window( )方法該方法使MATLAB的命令窗口最小化。2.5 Void Maximum Command Window( )方法該方法使MATLAB的命令窗口最大化。3 軟件的系統設計與實現3.1 系統數據庫與數據來源本研究前期根據《中華人民共和國藥典(2005版)》搜集整理了中醫常用的141個單味藥信息,包括藥物名稱、漢語拼音、基原、性狀、鑒別、用途、炮制方法、性味、歸經、功效、主治、用法用量、用藥禁忌等多個字段,以及346個外用復方,包含復方名稱、別名、處方來源、藥物組成、加減、功效、主治、制備方法、用法用量、用藥禁忌、臨床應用、藥理、各家論述等。并根據復方劑型、主治的病癥規范統一,存進SQL Server數據庫,作為實驗數據。數據庫詳細設計在此略過。3.2 模塊組成數據可視化與數據挖掘軟件的研究主要包括兩個功能模塊,中醫外用藥數據庫模塊以及數據可視化與數據挖掘模塊。其中,主要的數據可視化與數據挖掘模塊如圖1所示。3.2.1 數據預處理模塊 對需可視化和數據挖掘的源數據進行規范化處理,處理完成后存進數據庫。文本分詞系統根據《全國中草藥匯編》所建的詞表對特定的文獻資料進行分詞處理,本研究針對中藥外用藥領域的復方組成成分,使用逆向最長匹配算法,切分出復方的各個藥物組成,并進行統計處理,分詞結果可以作為可視化與數據挖掘的對象之一。 圖1 系統功能模塊圖3.2.2 數據可視化模塊 對數據對象進行二維或三維可視化顯示,數據對象來源不限,可以為既有數據,或新處理的分詞結果。根據適用對象的不同,可視化的方式也可繪出柱狀圖、餅狀圖、散點圖、火柴桿圖、面積圖、階梯圖等多種形式。3.2.3 數據挖掘模塊 系統采用基于共詞分析的聚類分析方法,對現有數據進行高頻字段統計,計算得出共詞矩陣,通過計算Ochiia系數,將共詞矩陣轉化為相似矩陣和相異矩陣,最后進行聚類分析,畫出聚類樹形圖。3.3 數據可視化與聚類分析示例3.3.1 二維柱狀圖 在程序中調用MATLAB繪制二維柱狀圖的代碼如下,生成的圖形如圖2所示。Set Mlab = CreateObject ("MATLAB.Applica- tion")Mlab.Execute (cmdMATLAB) 前面已經給字符串變量cmdMATLAB賦值,通過MATLAB執行命令創建數據矩陣或向量。Mlab.Execute ("bar(X),'stacked'") 通過函數bar()繪制二維柱狀圖。Mlab.Execute ("title('" & vXlabel & "柱狀圖', 'FontSize',15 )") 給圖形添加標題,設置字體字號。Mlab.Execute ("Ylabel('\it " & vYlabel &", FontSize',12 )")Mlab.Execute ("Xlabel('" & vXlabel & "序號 , 'FontSize',12 )") 給圖形縱坐標、橫坐標添加標簽,設置字體字號。Mlab.Execute ("set (gca, xtick, 1︰1︰" & vRcnt & ")") 給坐標軸添加向量刻度。 圖2 復方劑型統計二維柱狀圖從圖2可以直觀地看出,在整理出的346個外用復方中,采用散劑作為劑型的復方有128個,膏劑有113個,丸劑有52個,液劑有38個,餅劑有6個,片劑有2個,霜劑只有1個,其他不可直接判斷是何種劑型的復方有6個。3.3.2 三維火柴桿圖 與繪制柱狀圖類似,給變量cmdMATLAB賦值之后傳遞給MATLAB,創建數據矩陣或向量,即可通過命令Mlab.Execute ("stem3(X)")繪制三維火柴桿圖,如圖3所示。 圖3 復方劑型統計三維火柴桿圖如圖3所示,數據來源也是346個外用復方,然后根據劑型繪制出三維火柴桿圖。3.3.3 聚類分析 本研究中的數據挖掘是基于共詞研究的聚類分析。聚類分析法對于共詞關系網絡中的詞與詞之間的距離進行數學運算分析,將距離較近的主題詞聚集起來,形成一個個概念相對獨立的類團,使得類團內屬性相似性最大,類團間相似性最小[5]。本研究對于中藥復方中的藥材進行切分統計之后,再根據復方功效總結其對應的主治病癥,一起進行高頻關鍵詞統計,并計算得出共詞矩陣。再利用Ochiia系數計算出相似矩陣和相異矩陣,并作聚類分析,可以得知針對某些病癥的用藥規律。 圖4 中藥外用復方組成藥材主治聚類分析圖在高頻關鍵詞中按頻次從高到低的順序,排前30位的依次是冰片、白礬、乳香、雄黃、輕粉、瘡瘍、沒藥、麝香、黃柏、黃連、白芷、濕疹、當歸、甘草、石膏、朱砂、癰疽、青黛、大黃、龍骨、血竭、防風、五倍子、骨病關節病、硫黃、細辛、潰瘍、川芎、體癬、白及。在圖4中對應的編號從1依次到30。將這些關鍵詞進行聚類分析,結果如圖4所示。以圖舉例來說,編號15、17、20、30即表示石膏、癰疽、龍骨、白及,較早地聚為一類,很好地解釋了在治療癰疽時的用藥特點。4 小結本研究采用VB和MATLAB混合編程開發的數據可視化與數據挖掘軟件,提供友好的用戶交互界面,并以數據預處理、自動分詞切詞處理、共詞分析研究等完整的流程,進行外用復方藥材與病癥的聚類分析。應用此軟件的優勢在于,以前復雜煩瑣的依據文獻內容人工進行藥材摘錄、統計等工作,現在可以用程序自動完成,大大簡化了不必要的勞動,并且對數據進行分析挖掘,將結果以多種形式可視化地展現出來,為開發中醫藥和其他領域的應用程序積累了經驗,并為科研工作提供了有力的技術支持與新的方法。參考文獻[1]崔桂彬,王汝霖,李春梅,等.基于VB與MATLAB的圖像處理軟件設計[J].微計算機信息,2006,22(30):260-262.[2]譚炎,張凌燕.MATLAB與VB混合編程技術研究[J].微計算機信息,2006,22(15):247-249.[3]陳麗君,任文濤,趙萍.基于VB和MATLAB的苗田圖像實時處理軟件設計[J].農機化研究,2009,31(11):145-147.[4]盧振,曹屹,范永.基于VB與MATLAB混合編程數據庫圖形顯示方法[J].制導與引信,2009,30(3):36-40.[5]黃詠梅.讀者需求分析中的數據挖掘技術[J].大學圖書情報學刊,2006,24(4):48-50.(收稿日期:2013-10-24,編輯:魏民)endprint

Result= Mlab.Execute (Cmd)2.2 GetFullMatrix方法GetFullMatrix ([in] BSTR Name, [in] BSTR Workspace, [in, out] SAFEARRAY (double) * pr,[in, out] SAFEARRAY (double) * pi)GetFullMatrix方法將MATLAB中的一個矩陣變量傳送到VB中的一個一維或二維數組中,其中Name指定了MATLAB中的矩陣變量名,Workspace指定了該矩陣所在的MATLAB所在的工作區,pr是VB程序中的實部,pi是VB程序中的虛部。2.3 PutFullMatrix方法PutFullMatrix([in] BSTR Name, [in] BSTR Workspace,[in, out] SAFEARRAY (double) * pr,[in, out] SAFEARRAY (double) * pi)PutFullMatrix方法是將VB程序中的一個一維或二維數組傳遞到指定的MATLAB空間,各參數的意義和調用方法與GetFullMatrix方法類似。2.4 Void Minimize Command Window( )方法該方法使MATLAB的命令窗口最小化。2.5 Void Maximum Command Window( )方法該方法使MATLAB的命令窗口最大化。3 軟件的系統設計與實現3.1 系統數據庫與數據來源本研究前期根據《中華人民共和國藥典(2005版)》搜集整理了中醫常用的141個單味藥信息,包括藥物名稱、漢語拼音、基原、性狀、鑒別、用途、炮制方法、性味、歸經、功效、主治、用法用量、用藥禁忌等多個字段,以及346個外用復方,包含復方名稱、別名、處方來源、藥物組成、加減、功效、主治、制備方法、用法用量、用藥禁忌、臨床應用、藥理、各家論述等。并根據復方劑型、主治的病癥規范統一,存進SQL Server數據庫,作為實驗數據。數據庫詳細設計在此略過。3.2 模塊組成數據可視化與數據挖掘軟件的研究主要包括兩個功能模塊,中醫外用藥數據庫模塊以及數據可視化與數據挖掘模塊。其中,主要的數據可視化與數據挖掘模塊如圖1所示。3.2.1 數據預處理模塊 對需可視化和數據挖掘的源數據進行規范化處理,處理完成后存進數據庫。文本分詞系統根據《全國中草藥匯編》所建的詞表對特定的文獻資料進行分詞處理,本研究針對中藥外用藥領域的復方組成成分,使用逆向最長匹配算法,切分出復方的各個藥物組成,并進行統計處理,分詞結果可以作為可視化與數據挖掘的對象之一。 圖1 系統功能模塊圖3.2.2 數據可視化模塊 對數據對象進行二維或三維可視化顯示,數據對象來源不限,可以為既有數據,或新處理的分詞結果。根據適用對象的不同,可視化的方式也可繪出柱狀圖、餅狀圖、散點圖、火柴桿圖、面積圖、階梯圖等多種形式。3.2.3 數據挖掘模塊 系統采用基于共詞分析的聚類分析方法,對現有數據進行高頻字段統計,計算得出共詞矩陣,通過計算Ochiia系數,將共詞矩陣轉化為相似矩陣和相異矩陣,最后進行聚類分析,畫出聚類樹形圖。3.3 數據可視化與聚類分析示例3.3.1 二維柱狀圖 在程序中調用MATLAB繪制二維柱狀圖的代碼如下,生成的圖形如圖2所示。Set Mlab = CreateObject ("MATLAB.Applica- tion")Mlab.Execute (cmdMATLAB) 前面已經給字符串變量cmdMATLAB賦值,通過MATLAB執行命令創建數據矩陣或向量。Mlab.Execute ("bar(X),'stacked'") 通過函數bar()繪制二維柱狀圖。Mlab.Execute ("title('" & vXlabel & "柱狀圖', 'FontSize',15 )") 給圖形添加標題,設置字體字號。Mlab.Execute ("Ylabel('\it " & vYlabel &", FontSize',12 )")Mlab.Execute ("Xlabel('" & vXlabel & "序號 , 'FontSize',12 )") 給圖形縱坐標、橫坐標添加標簽,設置字體字號。Mlab.Execute ("set (gca, xtick, 1︰1︰" & vRcnt & ")") 給坐標軸添加向量刻度。 圖2 復方劑型統計二維柱狀圖從圖2可以直觀地看出,在整理出的346個外用復方中,采用散劑作為劑型的復方有128個,膏劑有113個,丸劑有52個,液劑有38個,餅劑有6個,片劑有2個,霜劑只有1個,其他不可直接判斷是何種劑型的復方有6個。3.3.2 三維火柴桿圖 與繪制柱狀圖類似,給變量cmdMATLAB賦值之后傳遞給MATLAB,創建數據矩陣或向量,即可通過命令Mlab.Execute ("stem3(X)")繪制三維火柴桿圖,如圖3所示。 圖3 復方劑型統計三維火柴桿圖如圖3所示,數據來源也是346個外用復方,然后根據劑型繪制出三維火柴桿圖。3.3.3 聚類分析 本研究中的數據挖掘是基于共詞研究的聚類分析。聚類分析法對于共詞關系網絡中的詞與詞之間的距離進行數學運算分析,將距離較近的主題詞聚集起來,形成一個個概念相對獨立的類團,使得類團內屬性相似性最大,類團間相似性最小[5]。本研究對于中藥復方中的藥材進行切分統計之后,再根據復方功效總結其對應的主治病癥,一起進行高頻關鍵詞統計,并計算得出共詞矩陣。再利用Ochiia系數計算出相似矩陣和相異矩陣,并作聚類分析,可以得知針對某些病癥的用藥規律。 圖4 中藥外用復方組成藥材主治聚類分析圖在高頻關鍵詞中按頻次從高到低的順序,排前30位的依次是冰片、白礬、乳香、雄黃、輕粉、瘡瘍、沒藥、麝香、黃柏、黃連、白芷、濕疹、當歸、甘草、石膏、朱砂、癰疽、青黛、大黃、龍骨、血竭、防風、五倍子、骨病關節病、硫黃、細辛、潰瘍、川芎、體癬、白及。在圖4中對應的編號從1依次到30。將這些關鍵詞進行聚類分析,結果如圖4所示。以圖舉例來說,編號15、17、20、30即表示石膏、癰疽、龍骨、白及,較早地聚為一類,很好地解釋了在治療癰疽時的用藥特點。4 小結本研究采用VB和MATLAB混合編程開發的數據可視化與數據挖掘軟件,提供友好的用戶交互界面,并以數據預處理、自動分詞切詞處理、共詞分析研究等完整的流程,進行外用復方藥材與病癥的聚類分析。應用此軟件的優勢在于,以前復雜煩瑣的依據文獻內容人工進行藥材摘錄、統計等工作,現在可以用程序自動完成,大大簡化了不必要的勞動,并且對數據進行分析挖掘,將結果以多種形式可視化地展現出來,為開發中醫藥和其他領域的應用程序積累了經驗,并為科研工作提供了有力的技術支持與新的方法。參考文獻[1]崔桂彬,王汝霖,李春梅,等.基于VB與MATLAB的圖像處理軟件設計[J].微計算機信息,2006,22(30):260-262.[2]譚炎,張凌燕.MATLAB與VB混合編程技術研究[J].微計算機信息,2006,22(15):247-249.[3]陳麗君,任文濤,趙萍.基于VB和MATLAB的苗田圖像實時處理軟件設計[J].農機化研究,2009,31(11):145-147.[4]盧振,曹屹,范永.基于VB與MATLAB混合編程數據庫圖形顯示方法[J].制導與引信,2009,30(3):36-40.[5]黃詠梅.讀者需求分析中的數據挖掘技術[J].大學圖書情報學刊,2006,24(4):48-50.(收稿日期:2013-10-24,編輯:魏民)endprint

Result= Mlab.Execute (Cmd)2.2 GetFullMatrix方法GetFullMatrix ([in] BSTR Name, [in] BSTR Workspace, [in, out] SAFEARRAY (double) * pr,[in, out] SAFEARRAY (double) * pi)GetFullMatrix方法將MATLAB中的一個矩陣變量傳送到VB中的一個一維或二維數組中,其中Name指定了MATLAB中的矩陣變量名,Workspace指定了該矩陣所在的MATLAB所在的工作區,pr是VB程序中的實部,pi是VB程序中的虛部。2.3 PutFullMatrix方法PutFullMatrix([in] BSTR Name, [in] BSTR Workspace,[in, out] SAFEARRAY (double) * pr,[in, out] SAFEARRAY (double) * pi)PutFullMatrix方法是將VB程序中的一個一維或二維數組傳遞到指定的MATLAB空間,各參數的意義和調用方法與GetFullMatrix方法類似。2.4 Void Minimize Command Window( )方法該方法使MATLAB的命令窗口最小化。2.5 Void Maximum Command Window( )方法該方法使MATLAB的命令窗口最大化。3 軟件的系統設計與實現3.1 系統數據庫與數據來源本研究前期根據《中華人民共和國藥典(2005版)》搜集整理了中醫常用的141個單味藥信息,包括藥物名稱、漢語拼音、基原、性狀、鑒別、用途、炮制方法、性味、歸經、功效、主治、用法用量、用藥禁忌等多個字段,以及346個外用復方,包含復方名稱、別名、處方來源、藥物組成、加減、功效、主治、制備方法、用法用量、用藥禁忌、臨床應用、藥理、各家論述等。并根據復方劑型、主治的病癥規范統一,存進SQL Server數據庫,作為實驗數據。數據庫詳細設計在此略過。3.2 模塊組成數據可視化與數據挖掘軟件的研究主要包括兩個功能模塊,中醫外用藥數據庫模塊以及數據可視化與數據挖掘模塊。其中,主要的數據可視化與數據挖掘模塊如圖1所示。3.2.1 數據預處理模塊 對需可視化和數據挖掘的源數據進行規范化處理,處理完成后存進數據庫。文本分詞系統根據《全國中草藥匯編》所建的詞表對特定的文獻資料進行分詞處理,本研究針對中藥外用藥領域的復方組成成分,使用逆向最長匹配算法,切分出復方的各個藥物組成,并進行統計處理,分詞結果可以作為可視化與數據挖掘的對象之一。 圖1 系統功能模塊圖3.2.2 數據可視化模塊 對數據對象進行二維或三維可視化顯示,數據對象來源不限,可以為既有數據,或新處理的分詞結果。根據適用對象的不同,可視化的方式也可繪出柱狀圖、餅狀圖、散點圖、火柴桿圖、面積圖、階梯圖等多種形式。3.2.3 數據挖掘模塊 系統采用基于共詞分析的聚類分析方法,對現有數據進行高頻字段統計,計算得出共詞矩陣,通過計算Ochiia系數,將共詞矩陣轉化為相似矩陣和相異矩陣,最后進行聚類分析,畫出聚類樹形圖。3.3 數據可視化與聚類分析示例3.3.1 二維柱狀圖 在程序中調用MATLAB繪制二維柱狀圖的代碼如下,生成的圖形如圖2所示。Set Mlab = CreateObject ("MATLAB.Applica- tion")Mlab.Execute (cmdMATLAB) 前面已經給字符串變量cmdMATLAB賦值,通過MATLAB執行命令創建數據矩陣或向量。Mlab.Execute ("bar(X),'stacked'") 通過函數bar()繪制二維柱狀圖。Mlab.Execute ("title('" & vXlabel & "柱狀圖', 'FontSize',15 )") 給圖形添加標題,設置字體字號。Mlab.Execute ("Ylabel('\it " & vYlabel &", FontSize',12 )")Mlab.Execute ("Xlabel('" & vXlabel & "序號 , 'FontSize',12 )") 給圖形縱坐標、橫坐標添加標簽,設置字體字號。Mlab.Execute ("set (gca, xtick, 1︰1︰" & vRcnt & ")") 給坐標軸添加向量刻度。 圖2 復方劑型統計二維柱狀圖從圖2可以直觀地看出,在整理出的346個外用復方中,采用散劑作為劑型的復方有128個,膏劑有113個,丸劑有52個,液劑有38個,餅劑有6個,片劑有2個,霜劑只有1個,其他不可直接判斷是何種劑型的復方有6個。3.3.2 三維火柴桿圖 與繪制柱狀圖類似,給變量cmdMATLAB賦值之后傳遞給MATLAB,創建數據矩陣或向量,即可通過命令Mlab.Execute ("stem3(X)")繪制三維火柴桿圖,如圖3所示。 圖3 復方劑型統計三維火柴桿圖如圖3所示,數據來源也是346個外用復方,然后根據劑型繪制出三維火柴桿圖。3.3.3 聚類分析 本研究中的數據挖掘是基于共詞研究的聚類分析。聚類分析法對于共詞關系網絡中的詞與詞之間的距離進行數學運算分析,將距離較近的主題詞聚集起來,形成一個個概念相對獨立的類團,使得類團內屬性相似性最大,類團間相似性最小[5]。本研究對于中藥復方中的藥材進行切分統計之后,再根據復方功效總結其對應的主治病癥,一起進行高頻關鍵詞統計,并計算得出共詞矩陣。再利用Ochiia系數計算出相似矩陣和相異矩陣,并作聚類分析,可以得知針對某些病癥的用藥規律。 圖4 中藥外用復方組成藥材主治聚類分析圖在高頻關鍵詞中按頻次從高到低的順序,排前30位的依次是冰片、白礬、乳香、雄黃、輕粉、瘡瘍、沒藥、麝香、黃柏、黃連、白芷、濕疹、當歸、甘草、石膏、朱砂、癰疽、青黛、大黃、龍骨、血竭、防風、五倍子、骨病關節病、硫黃、細辛、潰瘍、川芎、體癬、白及。在圖4中對應的編號從1依次到30。將這些關鍵詞進行聚類分析,結果如圖4所示。以圖舉例來說,編號15、17、20、30即表示石膏、癰疽、龍骨、白及,較早地聚為一類,很好地解釋了在治療癰疽時的用藥特點。4 小結本研究采用VB和MATLAB混合編程開發的數據可視化與數據挖掘軟件,提供友好的用戶交互界面,并以數據預處理、自動分詞切詞處理、共詞分析研究等完整的流程,進行外用復方藥材與病癥的聚類分析。應用此軟件的優勢在于,以前復雜煩瑣的依據文獻內容人工進行藥材摘錄、統計等工作,現在可以用程序自動完成,大大簡化了不必要的勞動,并且對數據進行分析挖掘,將結果以多種形式可視化地展現出來,為開發中醫藥和其他領域的應用程序積累了經驗,并為科研工作提供了有力的技術支持與新的方法。參考文獻[1]崔桂彬,王汝霖,李春梅,等.基于VB與MATLAB的圖像處理軟件設計[J].微計算機信息,2006,22(30):260-262.[2]譚炎,張凌燕.MATLAB與VB混合編程技術研究[J].微計算機信息,2006,22(15):247-249.[3]陳麗君,任文濤,趙萍.基于VB和MATLAB的苗田圖像實時處理軟件設計[J].農機化研究,2009,31(11):145-147.[4]盧振,曹屹,范永.基于VB與MATLAB混合編程數據庫圖形顯示方法[J].制導與引信,2009,30(3):36-40.[5]黃詠梅.讀者需求分析中的數據挖掘技術[J].大學圖書情報學刊,2006,24(4):48-50.(收稿日期:2013-10-24,編輯:魏民)endprint

猜你喜歡
數據挖掘可視化方法
基于CiteSpace的足三里穴研究可視化分析
基于Power BI的油田注水運行動態分析與可視化展示
云南化工(2021年8期)2021-12-21 06:37:54
探討人工智能與數據挖掘發展趨勢
基于CGAL和OpenGL的海底地形三維可視化
“融評”:黨媒評論的可視化創新
傳媒評論(2019年4期)2019-07-13 05:49:14
基于并行計算的大數據挖掘在電網中的應用
電力與能源(2017年6期)2017-05-14 06:19:37
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
一種基于Hadoop的大數據挖掘云服務及應用
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
捕魚
主站蜘蛛池模板: 日韩成人免费网站| 四虎精品免费久久| 国产在线视频福利资源站| 九色视频在线免费观看| 色婷婷久久| 人妻无码一区二区视频| 亚洲三级成人| 中美日韩在线网免费毛片视频 | 伊人久久久大香线蕉综合直播| 国产门事件在线| 国产国产人在线成免费视频狼人色| 在线无码av一区二区三区| 欧美三级自拍| 久久这里只有精品8| 亚洲欧美精品日韩欧美| 日韩成人在线一区二区| 欧美激情综合一区二区| 萌白酱国产一区二区| 国产丰满成熟女性性满足视频| 六月婷婷精品视频在线观看| 亚洲浓毛av| 天天色天天综合网| 久久国产拍爱| 国产在线小视频| 欧美啪啪视频免码| 综合色天天| 国产日本欧美亚洲精品视| 国产精品密蕾丝视频| 国产欧美精品一区aⅴ影院| 久久国产精品无码hdav| 日韩精品亚洲人旧成在线| 东京热高清无码精品| 日本一区中文字幕最新在线| 国产日韩欧美在线播放| 亚洲乱码精品久久久久..| 国产成人亚洲精品无码电影| 亚洲精品自产拍在线观看APP| 亚洲国产清纯| 成人在线观看一区| 亚洲另类第一页| 亚洲女同欧美在线| 在线99视频| 国产精品永久免费嫩草研究院| 欧美色综合久久| 亚洲AV无码久久精品色欲| 伊人久久精品无码麻豆精品 | 久久99国产综合精品1| 亚洲第一成年人网站| 国产在线视频欧美亚综合| 婷婷色一区二区三区| 亚洲视频一区| 亚洲人在线| 国产精品无码AⅤ在线观看播放| AV无码一区二区三区四区| 大陆国产精品视频| 久久久噜噜噜| 国产成人三级| 本亚洲精品网站| 国产成人资源| 996免费视频国产在线播放| 国产极品美女在线播放| 在线欧美a| 一级看片免费视频| 色欲色欲久久综合网| 真实国产乱子伦视频| 特级做a爰片毛片免费69| 日本草草视频在线观看| 国产精品福利社| 国内精品免费| 日韩区欧美国产区在线观看| 欧美成一级| 亚洲无码高清免费视频亚洲| 五月天综合网亚洲综合天堂网| 国产免费福利网站| 亚洲91精品视频| 久久久久中文字幕精品视频| 亚洲天堂福利视频| 亚洲欧美日韩久久精品| 亚洲成a人片| 国产区在线看| 人禽伦免费交视频网页播放| 在线欧美一区|