vidjil issueshttps://gitlab.inria.fr/vidjil/vidjil/-/issues2018-07-20T19:06:11+02:00https://gitlab.inria.fr/vidjil/vidjil/-/issues/3405Choses sur lesquelles il y a eu du travail et qui seraient à boucler2018-07-20T19:06:11+02:00Mathieu GiraudChoses sur lesquelles il y a eu du travail et qui seraient à bouclerun tag ?
cc @mikael\-sun tag ?
cc @mikael\-shttps://gitlab.inria.fr/vidjil/vidjil/-/issues/2326Export csv avec clusters2018-07-20T19:02:36+02:00Mathieu GiraudExport csv avec clustersMichael Svaton ~"PRA-Prague" se sert régulièrement de l'export csv (et fait du R ensuite).
L'export ne tient pas compte des clusters/merges : il aimerait avoir une colonne de plus pour les clusters.
cc @mikael-s @RyanHerbMichael Svaton ~"PRA-Prague" se sert régulièrement de l'export csv (et fait du R ensuite).
L'export ne tient pas compte des clusters/merges : il aimerait avoir une colonne de plus pour les clusters.
cc @mikael-s @RyanHerbhttps://gitlab.inria.fr/vidjil/vidjil/-/issues/2153Supprimer GERMLINES_REGULAR / _INCOMPLETE suite à -i ?2019-02-12T13:57:51+01:00Mathieu GiraudSupprimer GERMLINES_REGULAR / _INCOMPLETE suite à -i ?Dans ce qui arrive bientôt :
```
-c clones -g germline/homo-sapiens.g -i -2 -3 data/Stanford_S22.fasta # (basic usage, detect the locus for each read, including unusual/unexpected recombinations)
-c clones -g germline/hom...Dans ce qui arrive bientôt :
```
-c clones -g germline/homo-sapiens.g -i -2 -3 data/Stanford_S22.fasta # (basic usage, detect the locus for each read, including unusual/unexpected recombinations)
-c clones -g germline/homo-sapiens.g:IGH -3 data/Stanford_S22.fasta # (restrict to IGH complete locus)
```
J'aimerais supprimer `-i` (le mettre par défaut) : le mécanisme de filter est plus générique (`:IGH` ou `:IGH,IGH+`) , et l'interaction entre `-i` et le filter est confuse (actuellement `:IGH,IGH+` ne sélectionne pas `IGH+` si on ne met pas `-i`...)
Dans mes rêves les plus fous, je voudrais même supprimer `-2` et le mettre par défaut, mais non, ce n'est pas raisonnable et c'est une porte-dans-le-nez. @mikael-shttps://gitlab.inria.fr/vidjil/vidjil/-/issues/2003Le résultat de la segmentation change selon le contexte2019-11-23T05:29:48+01:00Vidjil TeamLe résultat de la segmentation change selon le contexteExemple : http://rbx.vidjil.org/browser/index.html?patient=3837&config=2
On prend le gros clone et les petits clones autour. La moitié a un D trouvé, pas l'autre moitié. Le D fait 22bp il n'est pas trouvé dès qu'il y a une erreur/mutati...Exemple : http://rbx.vidjil.org/browser/index.html?patient=3837&config=2
On prend le gros clone et les petits clones autour. La moitié a un D trouvé, pas l'autre moitié. Le D fait 22bp il n'est pas trouvé dès qu'il y a une erreur/mutation. Or si on exporte ces séquences et qu'on fait tourner le -c segment ou, même, Vidjil avec les mêmes options que sur le serveur (et même avec le vidjil présent sur le serveur)... on ne trouve pas la même segmentation.
Voir le test 88c6e92
***
N'y aurait-il pas un test de e-valeur pour le D qui dépende du nombre de reads ? (dans le test on passe de 2D trouvés avec un seul read, contre 0 D trouvé avec 11 reads)
***
> N'y aurait-il pas un test de e-valeur pour le D qui dépende du nombre de reads ?
Oui... et je pense bien que ce n'est pas un bug, mais une feature (introduite par e6ffb91). C'est précisément pour cela qu'est fait la E-value, non ? On fait strictement la même chose pour la FineSegmentation V/J ("multiplier" dans FineSegmenter()).
Le multiplier est
- nb_reads_for_evalue pour -c segment (pour V/J comme pour D)
- sort_clones.size() pour -c clones (Aïe, je me rends compte qu'il n'y est pas pour V/J, vidjil.cpp:1413 !!!)
Ce multiplier dit bien le nombre de segmentation que l'on fait, bref ce qu'il faut pour transformer la p-valeur en e-valeur.
Après, peut-être que le calcul des p-valeurs du D est trop stringent (voir tâche réouverte).
***
Et on a même une dépendance encore plus vicieuse que celle au nombre de reads : passer de -z 100 à -z 1000 peut faire dé-segmenter une séquence... C'est la vie. Voir si IgBlast a aussi ce type de comportement.
***
Pourquoi le multiplier devrait-il être le nombre de clones plutôt que le nombre de séquences réellement segmentées ?
***
Qu'on n'ait pas les mêmes résultats entre 10M de reads (fine segmentés) et 10 reads, je comprends bien : on change de plusieurs ordres de grandeur. Mais qu'on n'ait pas les mêmes résultats entre 1 read, 6 reads et 11 reads, j'ai plus de mal. Peut-être est-ce juste un problème de seuil de E-valeur
***
> Mais qu'on n'ait pas les mêmes résultats entre 1 read, 6 reads et 11 reads, j'ai plus de mal
Tout à fait, il faut comprendre ce qu'il se passe, et il y a peut-être des bugs
> Pourquoi le multiplier devrait-il être le nombre de clones plutôt que le nombre de séquences réellement segmentées ?
Oui, l'estimation actuelle est trop stricte. Est-ce que cela devrait être un max entre sort_clones.size() et max_clones ?
***
>Oui, l'estimation actuelle est trop stricte. Est-ce que cela devrait être un max entre sort_clones.size() et max_clones ?
J'aurais dit un min ;) Ce qui importe c'est le nombre de séquences qu'on va réellement segmenter.
***
Oui, tout à fait, un min !
J'étais plus en forme hier soir (cela m'a étonné d'ailleurs, c'était après 3 verres, ce a quoi je ne suis pas habitué :-)
***
@magiraud @mikael-sAlgo -- Important