论证候研究中变量聚类结果的诠释

来源:岁月联盟 作者: 时间:2015-06-05

               作者:张连文,周雪忠,陈弢,何丽云,刘保延

【关键词】  证候研究;变量聚类

近年来,有不少学者利用系统变量聚类方法对西医病种中中医症状的分布情况进行研究。例如,麻氏等[1]通过对739例胆病病案进行分析,得到9个类,并把它们分别诠释为肝胆湿热证、肝胆郁热证、肝胆蕴热证、肝胆气郁证、血瘀证、脾失健运证、阳虚寒湿证、阴虚内热证和热毒亡阳证。笔者剖析系统变量聚类结果的统计学含义,并基于此讨论把它们诠释为证候的合理性。 我们的结论是,变量聚类的结果不能诠释为证候。

  1  变量聚类结果的统计学含义
   
  在麻氏等[2]分析的胆病数据中,症状变量全部是二值的。分析所得的变量类之一如下。
   
  类1:发热寒战、右上腹压痛拒按、黄疸、恶心呕吐、右上腹疼痛、大便秘结、小便色黄、苔黄、苔腻、脉滑、脉弦、口苦。
   
  本节以这个类为例,剖析系统变量聚类结果的含义。要准确把握这个类的含义,需要考虑3个因素,即“变量”与“事件”这两个概念的区别、变量间相似系数的定义以及变量类间相似系数的定义。下面逐一讨论这3个因素。

  1.1  变量与事件
   
  变量是刻画事物某方面特征的指标,它的每一个取值对应一个事件。先拿概率论中常用的抛掷硬币试验为例来解释这两概念。抛掷硬币试验可以从多个方面来看:使用的硬币是否质地均匀、抛掷方式如何、抛掷结果是什么等等。“抛掷结果”这个指标刻画试验一个方面的特征,因此它是一个变量。这个变量有两个可能的取值,即“正面朝上”和“反面朝上”。于是有两个事件,即“抛掷结果正面朝上”和“抛掷结果反面朝上”。
   
  接下来看一个中医的例子。“有无口苦”是反映患者身体一个方面特征的指标,因此它是一个变量,称为症状变量。它有两个可能的取值,即“有”和“无”。于是有两个症状事件, 即 “(患者)有口苦”和“(患者)无口苦”。如果要考虑不同轻重程度,相应的变量是“口苦程度”。 一般情况下,程度变量有4个可能的取值,即“无”、“轻”、“中”和“重”。于是有4个症状事件,即“无口苦”、“有轻度口苦”、“有中度口苦”和“有重度口苦”。为了统一二值和多值情况下症状变量的称谓,可以用“口苦情况” 来替代“有无口苦”和“口苦程度”。
   
  “有口苦”这个词通常被简化为“口苦”。同时,“口苦情况”也被简化为“口苦”。这样,“口苦”时而指“口苦情况”这个变量,时而又指“有口苦”这个事件。在下一节读者将会看到,这种歧义性造成了对变量聚类结果之含义的误解。
   
  顾名思义,变量聚类的对象是变量而不是事件,其结果是变量的类而不是事件的类。所以,类1的成员是“口苦情况”等症状变量,而不是“有口苦”等症状事件。为了避免误解,我们把类1的定义改写如下。
   
  类1:发热寒战情况、右上腹压痛拒按情况、黄疸情况、右上腹疼痛情况、恶心呕吐情况、大便秘结情况、小便色黄情况、苔黄情况、苔腻情况、脉滑情况、脉弦情况、口苦情况。

  1.2  变量类相似系数
   
  “口苦情况”等12个症状变量为什么会被聚成一类呢?它们被聚成一类这件事的含义是什么?一个粗略的回答是,这意味着“口苦情况”等12个症状变量之间的相似度高。如果要准确回答这个问题,则需要考虑如何基于变量之间的相似系数定义类之间的相似系数。
   
  常用的方法有最大相似系数法、最小相似系数法和平均相似系数法。在计算两个类A和B间的相似系数时,考虑A中变量与B中变量间的相似系数。最大相似系数法取其最大者,最小相似系数法取其最小者,而平均相似系数法取平均数[2]。
   
  如果类1是用最大相似系数法获得的,那么对类中任意一个变量V,类中有另外一个变量U使得V和U间的相似系数不低于某个阈值。如果类1是用最小相似系数法获得的,那么类中任意两个变量间的相似系数不低于某个阈值。如果类1是用平均相似系数法获得的,那么类中变量间的相似系数的平均值不低于某个阈值[2]。
   
  上面提到阈值是怎样决定的呢?在获得类1的过程中,需要合并多对变量类,而每对类之间都有一个相似系数。这些相似系数的最小者就是上面说的阈值。一般说,最大相似系数法的阈值最大,平均相似系数法的阈值次之,最小相似系数法的阈值最小。

  1.3 变量相似系数
   
  变量间相似系数的高低的直观含义是什么?这个问题的答案依赖所选用的相似系数是什么。相似系数有各种各样的类型[2]。作为例子,这里只讨论Jaccard相似度和相关系数。
   
  Jaccard相似度只适用于二值变量。下面用一个例子来说明它的定义和直观含义。用d记脉弦和口苦同时出现的样本数,b记脉弦出现而口苦不出现的样本数,c记脉弦不出现而口苦出现的样本数。“脉弦情况”和“口苦情况”这两个变量的Jaccard相似度定义为d/(b+c+d)。Jaccard相似度的取值在0~1之间,可以视为是症状出现的“同步率”。它的值越高,脉弦和口苦出现时的“同步率”就越高,即脉弦和口苦的出现更接近如下情况:要么两者都不出现,要么两者都出现。
   
  相关系数是统计学中用来度量数字变量间关联程度的一个指标。如果把症状的出现表示为1,不出现表示为0,那么就可以定义“脉弦情况”和“口苦情况”间的相关系数。相关系数的取值在0~1之间。当两个变量的可能取值相同时,它们之间的相关系数也可视为是一种“同步率”。“脉弦情况”和“口苦情况”间的相关系数越高,脉弦和口苦同时出现或同时不出现的次数也就越多,反之亦然。

图片内容