首页 > 范文大全 > 正文

数据预处理在脑卒中病例数据中的应用

开篇:润墨网以专业的文秘视角,为您筛选了一篇数据预处理在脑卒中病例数据中的应用范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要: 利用数据预处理技术,将脑卒中发病病例信息数据中的大量信息进行处理,去除了数据中的数据不一致、冗余、错误信息等,提高了数据质量,有助于筛选出相对可靠的数据,从而有利于得出真实、准确的数据分析结果。

关键词: 数据预处理; 数据质量; 脑卒中; Excel

中图分类号:TP311 文献标志码:A 文章编号:1006-8228(2013)12-55-02

Application of data preprocessing technology in stroke patients information database

Yu Cuilan

(Department of computer science ,Dehong Teacher's College, Luxi, Yunnan 678400, China)

Abstract: Data preprocessing technology is applied to process large amounts of information in stroke patient data, to solve the problem of data inconsistency, redundancy, error information, etc. The preprocessing results improve data quality, help to select relatively reliable data, draw the true and accurate data analysis results.

Key words: data preprocessing; data quality; stroke; Excel

0 引言

现实世界的数据一般是不完整的、含噪声的、不一致的,并且数据量大,多数还来自多个异构数据源。这就给后续的数据分析和数据挖掘带来极大的麻烦,甚至导致错误的结论,所以有必要对数据进行预处理,以提高数据质量,从而提高分析结果的质量。数据预处理[1-2]主要是指数据的抽取、转化、和清理。抽取是指从系统或源系统中把数据导入;转化一般是指对数据进行统一(包括数据格式和数据编码的统一),清理是指把一些垃圾数据清理掉,保留有用数据。脑卒中是脑中风的学名,是一种突然起病的脑血液循环障碍性疾病。人们想要根据病例数据,对发病人群进行统计描述,研究脑卒中发病率与气温、气压、年龄、职业的关系,对高危人群提出预警和干预的建议方案等。本文以中国某城市四家医院2007年1月至2010年12月的脑卒中发病病例信息数据集(共61927条)为例,阐述了对这些数据进行预处理的过程。

1 数据预处理

1.1 数据说明

数据来源于中国某城市四家医院2007年1月至2010年12月的脑卒中发病病例信息(每家医院一个excel数据表,分别是data1.xls、data2.xls、data3.xls、data4.xls,共有61927条记录),数据字段格式如表1所示。

表1 数据字段格式

[Sex\&Age\&Occupation\&Time of incidence\&Report time\&2\&80\&3\&02-03-1990\&03-01-2008\&1\&72\& \&03/07/2008\&20/07/2008\&1\&31\&1\&2009-9-9\&2009-9-22\&2\&79\& \&2009-03-08\&2009-03-08\&2\&67\&7\&2009-3-17\& \&1\&63\& \&2009-4-9\&2009-04-09\&2\&80\&1\&03/07/2008\&04/07/2008\&2\&83\&1\&03-05-2007\&19-01-2008\&]

先对数据进行预处理:根据四个数据表的Time of incidenc(发病时间)找出2007年至2010年每年的脑卒中病人信息。以下是对四个数据表的数据预处理的过程。

1.2 data1.xls数据预处理

⑴ 工作表“脑卒中”中,字段Time of incidence的值不规范,首先对它进行处理,例如将值为“18-01-2007”的格式转换为“2007-1-18”的格式,步骤如下:

① 选择Time of incidence列,单击“数据”-“分列”,分割符号用“-”,目标区域到“$g$1”,使Time of incidence列的值分割成了三列,分别放到了g、h、i列;

② 单击“数据”-“自动筛选”,单击i列的“自定义”,条件为“大于或等于2007”且“小于或等于2007”,例如筛选出所有格式为“18-01-2007”的病人记录;

③ 单击筛选出的病人记录,按ctrl+A键,按ctrl+x键,新建一工作表dateformat,单击A2,按ctrl+v键,则将筛选出的全部数据剪切到另一个工作表dateformat中;

④ 在工作表dateformat中,在单元格j2输入公式“=date(i2,h2,g2)”,得到如“2007-1-18”的日期格式,然后在此列拖动填充按钮,得到所有如“2007-1-18”的日期格式;

⑤ 选择j列,单击“编辑”-“复制”,单击单元格k2,单击“编辑”-“选择性粘贴”,单击“值和数字格式”,单击“确定”;

⑥ 删除字段Time of incidence的值,将字段k的值复制到字段Time of incidence中;

将工作表dateformat中a列到e列的病人记录加入到原工作表脑卒中。

至此,字段Time of incidence的值转换完成。

⑵ 对处理后的工作表“脑卒中”,使用“数据”-“自动筛选”,使用字段Time of incidence的“自定义”,分别筛选出Time of incidence为2007年(如设置条件为 “大于或等于2007-1-1”且“小于或等于2007-12-31”)、无效日期的记录,并将它们分别存放到各个新建的工作表中。

1.3 data2.xls数据预处理

⑴ 工作表“脑卒中”中字段Time of incidence的值较为复杂,有格式:例如“18-01-2007”、“26/05/2008”、“2008-07-06“、“2009-2-12”,针对这些格式,要把它改成如“2008-7-6”的格式,方法同1.2,只是把分列时的分割符设为“/”和“-”,再分别对年在前面的和年在最后的格式进行处理。

⑵ 将工作表“脑卒中”中字段Time of incidence的值为如“20080710”的格式转换成的格式转换为如“2008-7-10”的格式,方法如下:①找到第一个如“20080710”的格式,单击左上角的绿色三角旁边的下拉箭头,选“转换成数字”,则将文本数字转换成了数字;②使用“数据”-“自动筛选”,使用字段Time of incidence的“自定义”条件为“大于或等于20080101”且“小于或等于20081231”,筛选出如“20080710”的格式的数据;③对筛选出的数据,使用left()、mid()、right()三个函数分别取出年(2008)、月(07)、日(10),最后再用date函数得到格式为“2008-7-10”的日期。

⑶ 对处理后的工作表“脑卒中”,使用“数据”-“自动筛选”,使用字段Time of incidence的“自定义”,分别筛选出Time of incidence为2007年、2008年、2009年、无效日期的记录,并将它们分别存放到各个新建的工作表中。

1.4 data3.xls数据预处理

以工作表“脑卒中”中字段Time of incidence的值为例将“2007-04-02”的格式转换为如“2007-4-2”的格式,方法同1.2,先分列,然后用data()合成日期。

对处理后的工作表“脑卒中”,使用“数据”-“自动筛选”,使用字段Time of incidence的“自定义”,分别筛选出Time of incidence为2007年、2008年、2009年、2010年,以及无效日期的记录,并将它们分别存放到各个新建的工作表中。

1.5 data4.xls数据预处理

⑴ 工作表“脑卒中”中字段Time of incidence的值含日期时间格式,首先要将日期时间分割开来:“数据-分列”,使用空格分割。

⑵ 该工作表“脑卒中”中字段Time of incidence如“04-10-2009”的格式,实际上就是“2009-10-4”,因此,选中该列,右键选“设置单元格格式”,数字选“日期”-“2001-3-14”,则将所有“04-10-2009”的格式显示成了“2009-10-4”的格式。

⑶ 将字段Time of incidence如“'2007-01-05”的格式转为“2007-1-5”的格式,方法同1.2。

⑷ 对处理后的工作表“脑卒中”,使用“数据”-“自动筛选”,使用字段Time of incidence的“自定义”,分别筛选出Time of incidence为2007年、2008年、2009年、2010年,以及无效日期的记录,并将它们分别存放到各个新建的工作表中。

最后,将四个数据文件data1、data2、data3、data4中的2007年、2008年、2009年、2010年、无效日期的数据分别放到一起,得到五个数据集,表2是2008年的其中几条病人记录。

表2 2008年病例信息表的其中几条病人记录

[Sex\&Age\&Occupation\&Time of incidence\&Report time\&1\&86\&0\&2008-3-1\&2009-02-27\&2\&63\&3\&2008-5-15\&2009-07-31\&2\&69\&0\&2008-7-1\&2009-07-1\&2\&68\&6\&2008-11-1\&2009-09-15\&1\&80\&0\&2008-12-25\&2009-05-31\&2\&72\&1\&2008-12-26\&2009-01-09\&1\&72\&1\&2008-12-26\&2009-01-09\&2\&57\&0\&2008-12-28\&2009-05-01\&]

2 结束语

通过分析脑卒中数据的特点,利用缺失值处理、数据不一致处理、数据集成、数据泛化、属性构造、数据归约等数据预处理技术,对四家医院2007年1月至2010年12月的脑卒中发病病例数据集进行处理,阐述了对这些数据进行数据预处理的过程,提高了数据质量,从而有利于得出真实、准确的统计分析结论。

参考文献:

[1] 陈文伟.数据仓库与数据挖掘教程(第2版)[M].清华大学出版社,

2011.

[2] 王丽珍等.数据仓库与数据挖掘原理及应用(第2版)[M].科学出版社,

2009.

[3] 常博,李振伟.数据预处理在高速公路收费系统中的应用[J].科技资

讯,2010.27(103).

[4] 刘莉,徐玉生,马志新.数据挖掘中数据预处理技术综述[J]. 甘肃科学

学报,2003.1:117-119

[5]王华,胡学钢.医学数据挖掘中的数据预处理与Apriori算法改进[J].

计算机系统应用,2009.9:94-97