设为首页 - 加入收藏
您的当前位置:主页 > 教育学 > 教育管理论文 > 正文

中医电子医案数据预处理方法

来源:www.37lw.cn 编辑:admin 时间:2017-10-30
1问题描述 原始电子医案数据大多不符合数据库设计要求,图1所示的数据存储结构是常见的错误结构之一。其中,每个患者的症状都是以堆积的形式作为整体存储在症状列中,药物信息则按照处方中药物数量依次以药物1、药物2、药物3……的布局在横向展开,如图1所示。 所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构成,新实体与原实体之间为一对多关系。此例中的症状属性从字段标题来看是满足第一范式的,但从字段内容来看并不符合要求,需将每个症状值拆分为最小信息单元,如图3(a)所示。由于药物1、药物2等信息同属药名信息,需要将图1中药物进行转置处理,转置后如图所示。 
  2 Excel VBA及Excd对象模型 
  VBA(Visual Basic for Application)是开发Excel应用程序的编程语言,也是内嵌于其他Office套件的应用程序开发语言。VBA的主要任务是组织或集合Office程序的功能,虽然它无法脱离Office环境独立运行,但却在自动化工作进程、个性化工作界面等方面有着内在的优势。作为Excel中的程序语言,由于Excel自身强大的数据分析与处理功能,使得Excel VBA具有更广泛的应用前景。与所有其他编程语言一样,VBA编程语言也是由类型、变量、数组、函数和流程控制等基本元素组成。在Office编程环境下,所有VBA代码都位于模块中,模块是存储VBA代码的容器。模块有三种类型:对象模块、标准模块和类模块。其中,对象模块是包含对象专用代码的模块,如工作表模块和工作簿模块;标准模块用于存储公用的,共享代码的模块;类模块则可以实现基于对象的编程,创建自己的属性、方法和事件。 
  3数据预处理过程 
  原始医案数据往往比图1所示的数据要复杂得多,主要问题包括中英文标点符号不一致,如有的分隔符是中文逗号,有的是英文逗号,有的则是空格;其他问题包括多余标点(如尾部),信息重复以及信息残缺等等。因此,在实施正式数据预处理之前,需要先统一分隔符、去除多余标点、删除重复信息、修复或删除残缺信息等等,之后才能实施数据预处理。 
  3.1症状数据的数据预处理算法 症状数据预处理的主要算法思想是,逐行遍历图1所示的记录,使用函数将症状信息以逗号为分隔符进行切割并将其存储到数组中,遍历数组并将其存储到新表中。具体算法如下: 第1步:新建工作簿,并设置目标区域列标题。 第2步:设置整型变量i=2。从第2行开始逐行遍历症状。 第3步:当i=k(k>=2且k<=总行数),使用Split函数以英文逗号为分隔符将单元格cells(k,3)中的症状信息进行拆分,结果放到变体变量Arr中。 第4步:遍历数组Arr,将其和患者编号一起存储到目标区域。 第5步:设置i=i+1,如果i<=总行数,则转到第3步,否则结束循环。 
  3.2处方数据的数据预处理算法 
  处方数据预处理的主要算法思想是,逐行遍历图1所示的记录,对于每一行数据,由左至右遍历各药物,并将其存储到新表中。具体算法如下: 第1步:新建工作簿,并设置目标区域列标题。 第2步:设置整型变量i=2。从第2行开始逐行遍历症状。 第3步:当i=k(k>=2且k<=总行数),从第k行4列遍历到k行最后一列,即遍历所有药物和剂量。 第4步:通过遍历药物将其存储到新建工作簿的目标区域。 第5步:设置i=i+1,如果i<=总行数,则转到第3步,否则结束循环。 
  4算法实现及主程序 
  下面通过主程序来说明格式转换过程。在以下主程序中,首先定义必需的变量,新建工作簿并设置目标区域列标题,然后循环遍历各条记录,对每组症状使用函数进行拆分处理,对每组用药进行遍历处理,并将处理后的信息存储到目标区域。代码实现如下: 
  在以上程序中,Array(“患者ID”,“症状”)函数功能返回一个指定字符序列的数组,Split(wsl.Cells(i,3),“,”)函數的功能是将字符串以逗号为标记进行切割拆分,并以数组形式返回,Work-books.Add表示新建工作簿,Range(“a65536”).End(xlUp).Row表示从指定单元格a行65536列向上查找最后一个非空单元格,及确定末尾行,Offse(1,0)表示从单元格偏移1行0列,即选择所选单元格下方的邻近单元格。 
  5讨论 
  本文介绍了使用Excel VBA编程技术对不符合数据库规范的电子医案进行数据预处理的方法。此项技术可扩展至对对各类Excel文件内容格式的转换,并可大幅降低手工处理的劳动强度,提高转换准确率并有效缩减工作时间。这种方法为相关问题的快速解决提供了一些方法上的参考。由于Excel软件的普遍性,使得这种方法具有广泛的应用需求。

相关文章:

网友评论:

无法在这个位置找到: ajaxfeedback.htm

毕业论文网 www.37lw.cn 联系QQ:250537075 邮箱:250537075@qq.com

毕业论文网为您提供专业的本科毕业论文,硕士毕业论文,MBA毕业论文,电大毕业论文,自考毕业论文,奥鹏毕业论文代写服务!

Top