Ler uma sequências fasta e separar por tamanho [Bioinformática]
Publicado por José Cleydson Ferreira da Silva (última atualização em 03/06/2017)
[ Hits: 3.579 ]
Homepage: geminivirus.org
O presente script lê um arquivo no formato fasta e separa por tamanhos < 9000; < 18000; >18000 em três arquivos diferentes.
Como utilizar?
1) Após download é preciso alterar a permissão do arquivo:
chmod +x get_by_length.pl
2) O script pode ser executado assim:
./get_by_length.pl arquivo.fasta
ou
perl get_by_length.pl arquivo.fasta
O resultado será direcionado para três arquivos diferentes:
arquivo.fasta_9000.fasta
arquivo.fasta_9000_18000.fasta
arquivo.fasta_18000_20504.fasta
#!/usr/bin/perl
open in,"<$ARGV[0]";
$i=0;
while($line = <in>){
chomp $line;
if($line =~ m/>/){
$key = $line;
}else{
$fasta{$key} .= $line;
}
}
$i=0;
while( ($key,$seq) = each %fasta){
if( $i < 9000){
open out,">>1000/$key_9000.fasta";
print out $key,"\n";
print out $seq,"\n";
close out;
}elsif($i < 18000){
open out,">>1000/$key_9000_18000.fasta";
print out $key,"\n";
print out $seq,"\n";
close out;
}else{
open out,">>1000/$key_18000_20504.fasta";
print out $key,"\n";
print out $seq,"\n";
close out;
}
}
close in;
Nenhum comentário foi encontrado.
Instalando COSMIC no Linux Mint
Turbinando o Linux Mint: o poder das Nemo Actions
Inteligência Artificial no desenvolvimento de software: quando começar a usar?
Como utilizar emblemas em pastas e arquivos no pcmanfm?
Instalando e definindo as novas fontes Adwaita no GNOME









