?

慢性乙肝癥狀與生物信息相關性的數據挖掘研究

2016-06-16 21:32趙亮吳元琳
電腦知識與技術 2016年10期
關鍵詞:慢性乙肝數據挖掘

趙亮+吳元琳

摘要:通過數據預處理對767例慢性乙肝患者的數據,進行數據清洗、數據變換和數據規約,得到規范的可挖掘的數據集。使用關聯規則Apriori分析方法,通過Weka數據挖掘平臺,對預處理后的數據進行挖掘,得到106627條關聯規則。然后通過過濾程序,篩選出符合要求的4935條強關聯規則。最后根據用戶(醫生)的要求,利用可視化方法把結果呈現給用戶。

關鍵詞:慢性乙肝;數據挖掘;數據預處理;模式解釋

中圖分類號:TP391 文獻標識碼:A 文章編號:1009-3044(2016)10-0200-03

Abstract: The data of 767 patients with chronic hepatitis B are cleaned, transformed and reduced by data preprocessing, and getting the standard data sets can be mined.It mines the preprocessed data by using the apriori analysis method of association rules on the weka data mining platform, and gets 106627 association rules. Then it filtrates 4935 strong association rules which meet the requirements by the filter program. Finally according to the requirements of the user(the doctor),the results are presented to the user by using the method of visualization.

Key words: chronic hepatitis B; data mining; data preprocessing; interpretation of pattern

慢性乙型肝炎是一種流行廣泛的疾病,全球約有3.5億慢性乙型肝炎病毒感染者,我國現有的慢性乙型肝炎的感染者約9300萬例[1]。本研究以國家科技重大專項“病毒性肝炎中醫證候生物學技術平臺研究(編號:2009ZX10005-020)”中的證候生物學技術平臺的數據為研究對象,在Weka數據挖掘平臺中采用關聯規則等數據挖掘方法,進行慢性乙肝癥狀和實驗室指標等生物信息相關性研究,獲得慢性乙肝癥狀和生物信息的相關性的分析結果。在分析結果中對發現的模式進行解釋,保留有用的模式,去掉多余的不合要求的模式,再將其轉換成有效的模式[2],使分析結果準確清晰。

1 數據選擇

本研究數據來源為國家科技重大專項“病毒性肝炎中醫證候生物學技術平臺研究”中證候生物學技術平臺的數據。利用該技術平臺將病例數據導出為Excel數據文件格式,共8個Excel文件。將這8個Excel文件合并為1個Excel文件,只保留脈象、脅下痛、HBV-DNA、谷丙轉氨酶、谷草轉氨酶、總膽紅素、直接膽紅素和間接膽紅素等共767行、97列數據。

2 數據預處理

2.1 數據清洗

對于空白值采取忽略的方式處理。對于噪聲數據采取如下處理方式,以HBV-DNA數據列為例,可以看出數據的標準格式為XE+Y(X為實數,Y為整數),然后升序排列該列數據,把值為陰或陰性的結論值設為正常,對其他非標準格式的數據平滑為標準格式。

2.2 數據變換

在數據表中,存在如下情況,例如:舌色共有2列數據,但在數據收集的時候,同一種舌色并沒有在同一列中。比如患者甲為淡紅,其數據存放于舌色A列中,而患者乙也為淡紅,其數據卻存放于舌色B列中。這就造成了同一癥狀的數據放在不同的列中,如果直接進行數據挖掘,則會造成挖掘的結果不準確。

解決問題的方法如下,先統計數據表中舌色的種類數量,共8種舌色。然后在2列舌色之后再增加6列舌色,同一種類舌色數據就可以放在同一舌色列中了。其他癥狀不同列的問題也按此方法處理。新數據表的數據列增加至147列。

2.3 數據歸約

本研究討論的實驗室指標等生物信息為HBV-DNA、谷丙轉氨酶、谷草轉氨酶、總膽紅素、直接膽紅素和間接膽紅素共6項。若要進行數據挖掘,則必須要對各項實驗室指標數據進行分類,根據實驗室指標值的范圍確定結論值,再用結論的值替代各項實驗室指標的值。

3 數據挖掘

本研究采用Weka3.7.11數據挖掘平臺,運用關聯規則Apriori分析方法,對數據進行挖掘,挖掘步驟如下:

3.1 將數據文件轉換成Weka數據格式

Weka數據挖掘平臺的數據標準文件格式是ARFF。在Weka中使用“ARFF Viewer”功能模塊打開CSV文件,然后將文件另存為ARFF格式文件即可。

3.2 關聯分析

在Weka中設置Apriori挖掘分析參數,其中最小支持度lowerBoundMinSupport為0.1,最小置信度minMetric為0.5,挖掘出的最大規則數量numRules為200000。參數設置好后開始挖掘,結果如圖1所示,共挖掘出106627條關聯規則。

4 模式解釋與評價

模式解釋與評價是指對發現的模式進行解釋,去掉多余的不合要求的模式,保留有用的模式,再將其轉換成有效的模式,最后利用可視化方法對有效的模式做出結論。

4.1 模式解釋

本研究是要挖掘出慢性乙肝癥狀和生物信息的強關聯規則。在已經挖掘出的這106627條關聯規則中,其中有很多是提升度Lift≤1,實驗室指標到實驗室指標、實驗室指標到癥狀和癥狀到癥狀的關聯規則,需要去掉這些不符合要求的關聯規則,保留有效的強關聯規則。

1) 導入數據

首先將從Weka中挖掘出的106627條關聯規則存儲為TXT文件,再將TXT文件中的關聯規則導入到MySql的數據庫的original表中。

2) 過濾規則

使用“Php+MySql+Apache”開發環境編寫過濾程序,核心代碼如下所示:

$flag1 = 1; //1表示原因,2表示結果

$flag2 = 1; //1表示是,2表示否

//處理數組,生成需要的7個字段,正則表達式匹配

for($i=1; $i<$arr_count ;$i++)

{

if (preg_match("/==>/", $arr[$i]))

{ //判斷有原因還是結果

$flag1 = 2; //2表示結果

continue;

}

//處理數組元素

if ($flag1 == 1)

{ if(preg_match("/^G/", $arr[$i]))

{ //判斷是否符合要求

$flag2 = 2;

break;

}

if (preg_match("/^[0-9]{1,}$/", $arr[$i]))

{ //判斷字段類型

$reason_count = $arr[$i];

}else {

if($reason!=''){

$reason = $reason." & ".$arr[$i];

}else{

$reason = $reason." ".$arr[$i];

}

}

}

else

{ if(preg_match("/^Y/", $arr[$i])) {

$flag2 = 2;

break;

}

if (preg_match("/^[0-9]{1,}$/", $arr[$i])) {

$result_count = $arr[$i];

} else {

if($result!='') {

$result = $result." & ".$arr[$i];

}else{

$result = $result." ".$arr[$i];

}

}

}

}

//判斷是否符合要求

if($flag2 == 1 && $lift>1)

{

$support= $result_count/767; //計算支持度

if($reason_count!=0) {

$confidence = ((int)$result_count) / $reason_count; //計算置信度

}

else {

echo $item_count;

}

$pass += 1; //統計通過數量

}

}

應用過濾程序對original表中的106627條關聯規則進行過濾,最后得到符合要求的強關聯規則4935條。

4.2 模式評價

首先將符合要求的4935條強關聯規則,通過編寫的分解程序分解得到最終的filter表,然后將filter表導出為Excel文件如圖2所示,共4935條強關聯規則。

最后根據用戶(醫生)的要求展示結果,這些結果作為用戶進一步分析的依據。

1) 按支持度Support降序排列,排在前10位的強關聯規則如圖3所示。

2) 按置信度Confidence降序排列,排在前10位的強關聯規則如圖4所示。

3) 按提升度Lift降序排列,排在前10位的強關聯規則如圖5所示。

4) 篩選出與癥狀“脅下痛”有關的規則,然后按照Confidence降序排列,排在前10位的強關聯規則如圖6所示。

5 總結

數據挖掘在慢性乙肝癥狀和生物信息相關性的研究中,數據預處理和模式解釋與評價這兩個過程尤為重要。數據預處理中得到的數據文件的準確性,直接關系到數據挖掘結果的精確度。模式解釋與評價是要針對用戶的要求去偽取真,過濾掉多余的不合要求的模式,篩選出有用的模式,再將其轉換成有效的模式,最后再利用可視化方法把有效的模式呈現給用戶。這兩個過程能順利地進行,需要不斷地和用戶進行深入的交流和溝通。

參考文獻:

[1] 李游,顏迎春,王妍,等.慢性乙型肝炎中醫治療研究進展[J].遼寧中醫藥大學學報,2016,18(4):208.

[2] Usama M, Fayyad, Gregoyr Piatetsky-ShaPiro, et al.The KDD Processfor Extracting Useful Knowledge from Volumes of Data[J].Communications of the ACM,1996,l39(11):120-127.

猜你喜歡
慢性乙肝數據挖掘
基于并行計算的大數據挖掘在電網中的應用
自擬軟肝煎治療慢性乙肝纖維化正虛血瘀證45例療效觀察
中西醫結合治愈慢性乙肝39例療效觀察
阿德福韋酯治療慢性乙肝臨床分析
果糖注射液對慢性乙肝合并糖尿病患者血糖的影響
一種基于Hadoop的大數據挖掘云服務及應用
數據挖掘的分析與探索
基于GPGPU的離散數據挖掘研究
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合