预览加载中,请您耐心等待几秒...
1/8
2/8
3/8
4/8
5/8
6/8
7/8
8/8
在线预览结束,喜欢就下载吧,查找使用更方便
如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
DNA序列的分类问题
摘要
本文给出了关于对DNA序列集合如何进行分类问题的解决方案。主要使用了Matlab软件对问题进行建模及运算,运用了聚类分析及判别分析的方法对数据进行处理。在对原始数据的处理和转换方面,使用了C#编写了相关代码,程序完成的主要任务是提取A、T、C、G在各个DNA序列集合中分别出现的频率,然后将这四个频率值作为每个DNA序列集合的特征向量,在Matlab中对其进行聚类分析,并利用分类结果,对未分类的DNA序列集合进行分类预测。
1.引言
随着人类社会信息和知识总量的不断膨胀,如何有效地管理和利用这些信息成为人们越来越关注的问题。快速增长的海量数据,它们存放在大型和大量的数据存储库中。如果没有强有力的工具,那么这些收集在大型数据存储库中的数据就会变成“数据坟墓”,从而出现数据丰富、信息贫乏的现象,而这些数据也难以被有效地利用并为人们的决策提供强有力的支持。数据挖掘技术正是在这种扩大的数据和贫乏的信息之间架起的一座桥梁,它的主要工作就是利用数据挖掘工具进行数据分析,发现重要的数据模式,对商务策略、知识库、科学和医学研究做出巨大贡献。[1]
聚类分析是数据挖掘领域里经常使用的基本方法之一,它是将数据对象分成类或簇的过程,使得同一个簇的对象之间具有很高的相似度,而不同簇中的对象高度相异。相异度根据描述对象的属性值评估,通常使用距离变量。[2]
在本文中,主要使用聚类分析对DNA序列进行分类。
1需要解决的问题
2000年6月,人类基因组计划中DNA全序列草图完成,2002年完成精确地全序列图。而DNA序列是由A、T、C、G四个字符按一定顺序排成的长约30亿的序列。但人们除了知道这四个字符表示四种碱基之外,对DNA序列所包含的其他信息却几乎一无所知。因此,充分发掘DNA序列的结构对于理解DNA全序列有着十分重要的意义。
该项目现有20个已知类别的人工制造DNA序列,其中序列标号1—10为A类,11-20为B类。现在需要从中提取特征,构造分类方法,可以利用这些已知类别的序列,衡量所使用的分类方法是否足够好。然后用该方法,对另外20个未标明类别的人工序列进行分类预测。
2数据集
本项目所采用的数据集来自于2000年网易杯全国大学生数学建模竞赛题目,题目中给出了20个已知类别的人工制造DNA序列,前10个为A类,后10个为B类。并且给出了20个未知分类的人工序列进行分类预测。数据文件见附录art-model-data.txt
3对数据的预处理
由于原始数据均为一连串的A、T、C、G的字符组合,要对其进行数据挖掘,就需要对原始数据进行预处理,即查看其中是否存在异常值、错误值和空缺等情况,并对上述情况进行相应的处理。
1.4数字特征的提取
通过编写C++程序,来得到每一条DNA中所包含的A、T、C、G的碱基数量以及该DNA总的碱基数,从而得到每条DNA中A、T、C、G在序列中出现的频率及序列总长度,分别记为。
程序代码如下:
将40条DNA序列应用该程序进行处理,最终得到如下结果:
序号ATCG总数1331519441112301718461113307245011144732122011152612264711163914144411173921114011183121184111192317234811110201530451111139555111101236553161101328571114110143355913110153271071101640519101101739292715110183255131011019246216811020226219711021314122191132230232526105231819263910224224722221152526232432105262544242111427242421351042830521718117291519224510130312726231073127402025112321936252911033303721231113424172437102353521223510336242232271053722212634104382651202011739292530221064023502320116其中,用红色标记出来的组,第22、32、37组均出现除A、T、C、G外的字符,这可能是由于数据录入时的人工失误造成。对于这三组数据,本文采用将错误字符忽略的办法,即DNA序列总数使用A、T、C、G四个字符出现的总数和,将错误字符的个数忽略。
将上述表格在EXCEL中进行计算,求出每条DNA中A、T、C、G出现的概率,即
得到下表:
序号PAPTPCPG10.29730.13510.17120.396420.27030.153