微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

bioinformatics perl useful

BLAST

use Bio::SearchIO;
my $searchio=Bio::SearchIO->new(-file=>$file_blast,-format=>'blast');
while( my $result = $searchio->next_result ) {
  my $qid = $result->query_name();
  my $qlen= $result->query_length();
  my $did = $result->database_name();
  while( my $hit = $result->next_hit ) {
    my $hit_name = $hit->name();
    my $hit_len = $hit->length;
    while( my $hsp = $hit->next_hsp ) {
      my $qs=$hsp->start('query');
      my $qe=$hsp->end('query');
      my $ds=$hsp->start('subject');
      my $de=$hsp->end('subject');
    }#hsp
  }#hit
}#result



FASTA

use Bio::SeqIO;
my $in=Bio::SeqIO->new(-file=>$fa_add,-format=>'fasta');
while(my $s=$in->next_seq){
  my $id=$s->id;
  my $seq=$s->seq;
}



GFF3

my($seqid,$source,$type,$start,$end,$score,$strand,$phase,$attribute)=split /\t/;


Pfam

my($seqid,$alignment_start,$alignment_end,$envelope_start,$envelope_end,$hmm_acc,$hmm_name,$hmm_start,$hmm_end,$hmm_length,$bit_score,$evalue,$significance,$clan)=split /\s+/;


mumer

my %aln;

  open(F,'<',$file_nucmer) or die("$!: $file_nucmer\n");
  while (<F>) {
    next unless(m/^\d+/);
    chomp;
    my($start1,$end1,$start2,$end2,$len1,$len2,$identity,$length_reference,$length_query,$coverage_reference,$coverage_query,$id_reference,$id_query)=split /\t/;
    push(@{$aln{$id_reference}},[$start1,$id_query]);
  }
  close(F);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐