perl Bio::SeqIO /probleme primary_id et desc
Bonjour,
J'ai écris un script (Bio::SeqIO) qui me permet d' obtenir la taille de chacune de mes séquences. Mais voilà, j'ai à priori 104763 séquences mais mon script m'en compte 85673!!!!
Quand je teste mon script avec la ligne
$hash{$seq->primary_id} = $seq->seq; j'ai le bon nombre de séquences (104763) mais avec
$hash{$seq->seq} = $seq->primary_id.$seq->desc ; j'ai le bon 85673 séquences
je ne vois d'ou proviens le problème.
MON FICHIER : ftp://ftp.ensembl.org/pub/release-74....cds.all.fa.gz
Code:
1 2 3
|
cat Homo_sapiens.GRCh37.74.cds.all.fa |awk ' { if($0 ~ /^>/){print $1;}}' | wc -l
104763 |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
my $in = Bio::SeqIO->new(-file => "Homo_sapiens.GRCh37.74.cds.all.fa", '-format' => 'Fasta');
my %hash;
my $count;
while ( my $seq = $in->next_seq()){
$hash{$seq->seq} = $seq->primary_id.$seq->desc ;#pour récup la ligne entière
}
foreach my $t (keys %hash){
$count++;
my $taille=length($t);
}
#print "nb de sequences: $count\n; # je trouve 85673 |
Quelqu'un aurait une suggestion?