好的,我有几百个感兴趣的蛋白质片段(699个序列),我想要比对并建立一个邻居加入树。在许多情况下,这些片段彼此不能很好地对齐(相同或相似蛋白质的不同区域)。然而,整个蛋白质序列已经被定义并提交到NCBI和其他数据库等。也有文献中为这些蛋白质制作的树。有没有办法从我的元基因组中提取我的片段,并将它们与已知序列进行比对,以定义我的每个片段在已发表的树上的位置?我唯一的解决方案是在预定义的树上运行每个序列(或序列簇)(使用发表的原始完整蛋白质序列),以便定义每个片段所在的位置。有没有更简单的方法来做这件事?
发布于 2012-10-09 13:15:56
对齐工具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";
}https://stackoverflow.com/questions/9046055
复制相似问题