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 : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 cat Homo_sapiens.GRCh37.74.cds.all.fa |awk ' { if($0 ~ /^>/){print $1;}}' | wc -l 104763Quelqu'un aurait une suggestion?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Partager