【关键词】 哮喘;文献研究;数据挖掘
支气管哮喘是一种复杂的慢性气道炎症,以呼吸困难和喘息反复发作为特征,被世界卫生组织列为四大顽症之一。中医药在哮喘的病因病机、辨证论治、治法方药等方面都积累了大量的临床经验和文献资料,对这些资料进行整理,运用数据挖掘等方法来发现其中深层次的规律和价值,有助于我们更好地对其加以研究与应用。在前期工作中,我们应用关联规则中频繁项集的方法,对古今哮喘方药的配伍规律进行了分析,找到其各自配伍的特点以及两者之间的异同,探讨了临床用药规律的发展变化[1]。现在我们运用基于Apriori算法及欧几里德距离聚类的方法,进一步对哮喘文献中的治法进行分析。
1 资料来源
1.1 数据来源
在《中医方剂大辞典》、《中医方剂数据库》以及现代文献中收集的哮喘方剂的基础上,构建哮喘方剂数据库,建立哮喘方剂数据库和分层聚类与关联的检索形式。通过对近万首方剂的筛选,选择其中对支气管哮喘发作期症状指认度清晰的方剂,进行数据分析。
古方的方源包括《金匮要略》、《诸病源候论》、《备急千金要方》、《外台秘要》、《普济本事方》、《三因极一病证方论》、《玉案》、《寿世保元》、《普济方》、《仙拈集》、《医学集成》、《片玉心书》、《证治汇补》、《惠直堂方》、《医学心悟》、《医方类聚》、《景岳全书》、《幼幼新书》等。今方选自成药处方集、公开发表的临床疗效报道或者医案,如《全国中药成药处方集》、《中国中医急症》、《国医论坛》、《中医药临床杂志》、《中国医药学报》、《实用中医内科杂志》、《中国中医药信息杂志》、《古今名方》、《首批国家级名老中医效验秘方精选》等。
收纳标准:古方选择以治疗“哮”、“哮吼”、“呷嗽”、“喘鸣”等证候或者表现为支气管哮喘症状的方剂为标准;今方选择以具备明确的支气管哮喘的诊断标准、完整的药物组成及剂量、临床病例达25例以上为标准。
排除标准:无药物组成、药物组成不完整、主治证不明确、主治证过于庞杂或针对性不强的方剂均不予收录。
1.2 数据处理
根据《中华本草》对药名进行规范处理,如“甜葶苈”、“苦葶苈”统一为“葶苈子”,“芎·”统一为“川芎”,“云苓”统一为“茯苓”,“苦杏仁”统一为“杏仁”,“麦蘗”统一为“麦芽”,“萝卜子”统一为“莱菔子”,“橘皮”统一为“陈皮”,“京知母”统一为“知母”等。
利用Excel表建立哮喘方药数据库(见表1) 表1 方药输入格式,其中第1列为方名,第1行为药名,方中有该药就在药名下输入1,无该药则输入0。
2 数据挖掘方法
2.1 相关定义
聚类指将数据对象分组成为多个簇,在同一个簇中的对象之间具有较高的相似度,而不同簇中的对象差别较大。通常采用距离来作为对象间相似度的度量方式,这里运用欧几里德距离,其定义如下:
欧几里德距离越短,说明两个簇之间的相似度越大,而在方剂相似度的比较中,相同的药物越多,两首方剂的关系就越密切。因此,我们同时引进了Apriori算法,提出一种基于Apriori算法和最短欧几里德距离聚类的方法。
算法思路是:求数据集D的最大频繁项集l1 ,然后将数据集D中包含l1的所有事务放进簇C1;将簇C1中的所有事务从数据集D中删除,然后在剩下的数据集上重复以上操作,直至找不到最大频繁项集或数据集为空。
2.2 算法描述
在数据集D中,事务Ti和Tj之间的相似度定义为:
其中,Ti(Ik=1)表示事务Ti在属性Ik上的取值是否为1,为1时Ti(Ik=1)=true,否则Ti(Ik=1)=false。其中数据集算法思路同上。描述如下:
算法:基于最大频繁项集的单层聚类算法
输入:哮喘方剂数据集D
输出:聚类出的类别
① Vector cluster;//存放聚类结果
② Do{
③ 用Apriori算法对整个数据集生成频繁项集,找出满足支持度计数(support Number)的最大频繁项集X[X=(I1,I2,I,In),其中Ij为一条事务的属性]
④ 将包含项集X的所有事务划分到一个类Ci中
⑤ Cluster.add(Ci)
⑥ 将Ci中的事务从数据集D中删去
⑦ While(数据集D不为空并且最大频繁项集X不为
[1] [2] [3] [4] 下一页