2012-01-28 125 views
0

好吧,我有几百个我感兴趣的蛋白质片段(699个序列),我想对齐并且做一个邻居连接树。这些片段在很多情况下不能很好地彼此对齐(相同或相似蛋白质的不同区域)。然而,整个蛋白质序列已被定义并提交给NCBI和其他数据库等。在这些蛋白质的文献中也有树。有没有办法从我的宏基因组中取出我的片段,并将它们与已知序列对齐以定义我的每个片段在发布的树上的位置?我对此的唯一解决方案是在预定义树上运行每个序列(或序列簇)(使用来自出版物的原始完整蛋白质序列),以便定义每个片段位于何处。有没有更简单的方法来做到这一点?相同蛋白质的片段的系统发育树(来自宏基因组)

+0

你或许应该支持这样的:http://area51.stackexchange.com/proposals/6729/bioinformatics;同时你可以在http://scicomp.stackexchange.com/找到帮助。 – Marcin 2012-01-28 14:46:52

+0

可能更好的地方来问这个问题在这里:http://biostar.stackexchange.com/ – PhiS 2012-01-29 14:42:27

回答

0

那么对齐工具Clustal可以对齐,也可以用适当的标志来制作树。我相信,如果你创建一个fasta文件,其中包含所有序列,包括最大的一个宏基因组。它可以使你根据对齐分数自动生成系统发育树。我不确定这是否能够实现你所期望的一切,但这是一个开始。您可能必须创建几个.fasta文件,以使用一些智能设计和先前的知识来对齐以产生所需的结果。这里是一个Perl脚本,我写了,使比对和系统进化树:

#!/usr/bin/perl 


use warnings; 

print "Please type the list file name of protein fasta files to align (end the directory path with a/or this will fail!): "; 
$directory = <STDIN>; 
chomp $directory; 

opendir (DIR,$directory) or die $!; 

my @file = readdir DIR; 
closedir DIR; 

my $add="_align.fasta"; 

foreach $file (@file) { 
my $infile = "$directory$file"; 
(my $fileprefix = $infile) =~ s/\.[^.]+$//; 
my $outfile="$fileprefix$add"; 
system "/Users/Wes/Desktop/eggNOG_files/clustalw-2.1-macosx/clustalw2 -INFILE=$infile -OUTFILE=$outfile -OUTPUT=FASTA -tree"; 
}