
利用Python读取fasta文件并进行一系列操作(上)
概述:
语言:python3.8
模块:pysam,collections
可选:jupyter noebook
整体思路:将fasta格式的基因原始数据处理为方便读写的txt格式并进行操作
步骤:
1. 获取自己的fasta文件(这里我将从NCBI上下载人类的ABO基因参考序列的fasta文件为例)
2. 利用pysam模块的FastaFile函数读取fasta,之后即可获取fasta的基本信息:filename 文件名,references 染色体编号(因为这里我下载的是ABO基因的fasta,所以不是染色体编号),nreferences 染色体数,lengths 每条染色体长度(这个非常重要!)
3. 通过判断输出的长度,我们知道了这个ABO基因的长度值为42144,我们再利用fetch函数获取ABO基因碱基序列(注意索引是从0开始)
4. 我们的最终目的是要输出txt,所以就需要将我们的碱基序列写到txt上
5. 我们可以利用我们输出的txt来做点事情,例如看看这个序列中各种碱基数量,先读取文件,再处理为列表,利用collection模块的Counter函数来输出结果
更多操作将在下篇解锁!
语言:python3.8
模块:pysam,collections
可选:jupyter noebook
整体思路:将fasta格式的基因原始数据处理为方便读写的txt格式并进行操作
步骤:
1. 获取自己的fasta文件(这里我将从NCBI上下载人类的ABO基因参考序列的fasta文件为例)
2. 利用pysam模块的FastaFile函数读取fasta,之后即可获取fasta的基本信息:filename 文件名,references 染色体编号(因为这里我下载的是ABO基因的fasta,所以不是染色体编号),nreferences 染色体数,lengths 每条染色体长度(这个非常重要!)
3. 通过判断输出的长度,我们知道了这个ABO基因的长度值为42144,我们再利用fetch函数获取ABO基因碱基序列(注意索引是从0开始)
4. 我们的最终目的是要输出txt,所以就需要将我们的碱基序列写到txt上
5. 我们可以利用我们输出的txt来做点事情,例如看看这个序列中各种碱基数量,先读取文件,再处理为列表,利用collection模块的Counter函数来输出结果
更多操作将在下篇解锁!
1 个回复
赞同来自:
要回复问题请先登录或注册