如何使用perl脚本批量生成反向互补序列


这篇文章将为大家详细讲解有关如何使用perl脚本批量生成反向互补序列,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

有时候我们需要得到序列的反向互补序列,可以用下面的脚本来批量处理序列。

用法:

perlfasta_Reverseplementary.pl-fainput.fa-outout.fa

input.fa是输入文件,out.fa是反向互补后的序列

输入文件格式入下所示:

>bta-26a-2GGCUGUGGCUGGAUUCAAGUAAUCCAGGAUAGGCUGUUUCCAUCUGUGAGGCCUAUUCUUGAUUACUUGUUUCUGGAGGCAGCU>bta-18bCUUGUGUUAAGGUGCAUCUAGUGCAGUUAGUGAAGCAGCUCAGAAUCUACUGCCCUAAAUGCUCCUUCUGGCACA>bta-29aAUGACUGAUUUCUUUUGGUGUUCAGAGUCAAUAUAAUUUUCUAGCACCAUCUGAAAUCGGUUAU>bta-7f-2UGUGGGAUGAGGUAGUAGAUUGUAUAGUUUUAGGGUCAUACCCCAUCUUGGAGAUAACUAUACAGUCUACUGUCUUUCCCACG

代码如下:

#!/usr/bin/perl-wusestrict;useGetopt::Long;useConfig::General;useBio::SeqIO;useBio::Seq;my$version="1.3";##prepareparameters#########################################################################-------------------------------------------------------------------------------------------##GetOptionsmy%opts;GetOptions(\%opts,"fa=s","out=s","h");if(!defined($opts{out})||!defined($opts{fa})||defined($opts{h})){print<<"UsageEnd.";UsageForcedparameter:-outoutfile<outfile>mustbegiven-fafastafile<infile>mustbegivenOtherparameter:-hHelpdocumentUsageEnd.exit;}my$in=Bio::SeqIO->new(-file=>"$opts{fa}",-format=>'Fasta');open(OUT,">$opts{out}")||die"openfile$opts{out}faild.\n";while(my$seq=$in->next_seq()){my($id,$sequence)=($seq->id,$seq->seq);$sequence=&reverseplement_IUPAC($sequence);printOUT">$id\n$sequence\n";}subreverseplement_IUPAC{my$dna=shift;#reversetheDNAsequencemy$rep=reverse($dna);#&nbspplementthereversedDNAsequence$rep=~tr/ABCDGHMNRSTUVWXYabcdghmnrstuvwxy/TVGHCDKNYSAABWXRtvghcdknysaabwxr/;return$rep;}subreverseplement{my$dna=shift;#reversetheDNAsequencemy$rep=reverse($dna);#&nbspplementthereversedDNAsequence$rep=~tr/ACGTacgt/TGCAtgca/;return$rep;}

关于“如何使用perl脚本批量生成反向互补序列”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。


上一篇:perl如何处理文件路径

下一篇:perl如何从数组随机抽取元素


Copyright © 2002-2019 测速网 www.inhv.cn 皖ICP备2023010105号
测速城市 测速地区 测速街道 网速测试城市 网速测试地区 网速测试街道
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!

热门搜索 城市网站建设 地区网站制作 街道网页设计 大写数字 热点城市 热点地区 热点街道 热点时间 房贷计算器