gpt4 book ai didi

perl - 如何将 PHYLIP 格式转换为 FASTA

转载 作者:行者123 更新时间:2023-12-04 23:18:36 27 4
gpt4 key购买 nike

我刚开始使用 perl,我有一个问题。我有 PHYLIP 文件,我需要将其转换为 FASTA。我开始写脚本。首先,我删除了行中的空格,现在我需要对齐每行中应该是 60 个氨基酸的所有行,并且序列标识符应该打印在新行中。也许有人可以给我一些建议?

最佳答案

BioPerl Bio::AlignIO 模块可能会有所帮助。它支持 PHYLIP 序列格式:

phylip2fasta.pl

use strict;
use warnings;
use Bio::AlignIO;

# http://doc.bioperl.org/bioperl-live/Bio/AlignIO.html
# http://doc.bioperl.org/bioperl-live/Bio/AlignIO/phylip.html
# http://www.bioperl.org/wiki/PHYLIP_multiple_alignment_format

my ($inputfilename) = @ARGV;
die "must provide phylip file as 1st parameter...\n" unless $inputfilename;
my $in = Bio::AlignIO->new(-file => $inputfilename ,
-format => 'phylip',
-interleaved => 1);
my $out = Bio::AlignIO->new(-fh => \*STDOUT ,
-format => 'fasta');

while ( my $aln = $in->next_aln() ) {
$out->write_aln($aln);
}

$ perl phylip2fasta.pl test.phylip
>Turkey/1-42
AAGCTNGGGCATTTCAGGGTGAGCCCGGGCAATACAGGGTAT
>Salmo_gair/1-42
AAGCCTTGGCAGTGCAGGGTGAGCCGTGGCCGGGCACGGTAT
>H._Sapiens/1-42
ACCGGTTGGCCGTTCAGGGTACAGGTTGGCCGTTCAGGGTAA
>Chimp/1-42
AAACCCTTGCCGTTACGCTTAAACCGAGGCCGGGACACTCAT
>Gorilla/1-42
AAACCCTTGCCGGTACGCTTAAACCATTGCCGGTACGCTTAA

test.phylip http://evolution.genetics.washington.edu/phylip/doc/sequence.html
  5    42
Turkey AAGCTNGGGC ATTTCAGGGT
Salmo gairAAGCCTTGGC AGTGCAGGGT
H. SapiensACCGGTTGGC CGTTCAGGGT
Chimp AAACCCTTGC CGTTACGCTT
Gorilla AAACCCTTGC CGGTACGCTT

GAGCCCGGGC AATACAGGGT AT
GAGCCGTGGC CGGGCACGGT AT
ACAGGTTGGC CGTTCAGGGT AA
AAACCGAGGC CGGGACACTC AT
AAACCATTGC CGGTACGCTT AA

关于perl - 如何将 PHYLIP 格式转换为 FASTA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15397672/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com