今天继续进行下一步,也是序列文件的获取,有了这些数据,我们才可以进行下一步的工作,才能够绘制一些图片。
1. CDS序列获取
# Nramp_num文件含有id号
xargs samtools faidx CDS.fa < id > Nramp_cds_seq
less Nramp_cds_seq
# 发现CDS序列有回车,分为很多行,用Perl单行命令将其变成一行
perl -pe '/^>/ ? print "\n" : chomp' Nramp_cds_seq | tail -n +2 > Nramp_cds.txt
less Nramp_cds.txt
文件
CDS原始序列
处理后的文件,只有单行序列
2. Genomic DNA序列
Gene序列比起前面的protein和CDS序列要稍微复杂一点,因为我们要获得的ID号不仅仅是geneid,而且还需要在染色体上的位置信息——起始和终止位置,以及染色体编号。
这里就需要用到其他两个数据文件了,就是基因组序列和基因组注释文件,思路——首先根据已经获得的ID号从gff文件中获取染色体位置信息,然后再用bedtools工具根据得到的染色体位置信息来获取基因的序列,最终得到基因集。代码如下:
# 根据geneid批量获取基因的染色体位置信息文件
grep -f geneid.file ITAG2.4_gene_models.gff3 | cut -f 1,4,5,9 | grep "ID=mRNA" | sed 's/;Name.*//g' | sed 's/ID.*://g' > gene.bed
# 利用bedtools工具,将基因序列提取出来并重定向到新文件
bedtools getfasta -fi genome.fa -bed gene.bed -name > gene_seq
结束了今天的任务,CDS和gene序列全部获取得到,接下来可以进行一些图的绘制。
染色体位置信息基因序列