perl如何提取进化树中基因的顺序

小编给大家分享一下perl如何提取进化树中基因的顺序,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

提取进化树中基因的顺序

进化树中基因是有顺序的,有些时候我们会需要用到这个基因列表,如果,手动来做就会比较麻烦。哪有什么快速的方法吗?

其实有的,进化树的nwk文件中就有基因的顺序:如下:

(chicken,((mouse,rat),(chimp,human)));

能够发现图中枝的顺序就是nwk文件中的顺序,这样我们只需要提取这个顺序即可。这里我写了一个脚本,如下:

用法:

perl  nwk_geneid.pl  -i in.nwk  -o out.txt

in.nwk 为输入的nwk文件,out.txt是输出的基因ID文件。

脚本代码;

use Getopt::Long;
use strict;

my %opts;
GetOptions(\%opts,"i=s","o=s","h");
open(IN,"$opts{i}") || die "open $opts{i} failed\n";
open(OUT,">$opts{o}") ||die "open $opts{o} failed\n";
while(<IN>){
chomp;
my $str = $_;
$str =~ s/\d\.\d+//g;
$str =~ s/\(//g;
$str =~ s/\)//g;
$str =~ s/://g;
$str =~ s/;//g;

my @line = split(",",$str);
print OUT join("\n",@line);
}
close(IN);
close(OUT);

以上是“perl如何提取进化树中基因的顺序”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注蜗牛博客行业资讯频道!

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论Telegram