L'estimation du nombre de séquences est fausse pour un .gz
Dans bioreader.cpp
, dans approx_nb_sequences_in_file(string f)
:
float ratio = (float) filesize(f.c_str()) / (float) sequences->getPos();
On ne prend pas en compte le cas où c'est compressé, bref la valeur est fausse à un facteur environ 4. Mais bon, vu que cela sert pour la e-valeur, on n'est pas à un demi-ordre de grandeur près...
- voir si un igzstream permet de savoir où l'on est, en position compressée
- ou voir si on peut avoir accès à la taille décompressée de tout le fichier
- ou multiplier par 4 quand c'est un .gz
Évoqué de nouveau vendredi dernier. En plus fasta.gz et fastq.gz ne donnent pas les mêmes biais.