3fa1dbf8cc
This commit introduces a new `distance` CLI subcommand that computes pairwise genomic distance matrices using configurable metrics (Jaccard, Hamming, Bray-Curtis, Euclidean, and Hellinger). It optionally generates phylogenetic trees (NJ or UPGMA) in Newick format and outputs results as CSV. The implementation adds a robust distance computation backend that dynamically routes to optimized backends based on index configuration, supports parallel iteration, and gracefully handles missing data. Additionally, it adds a `dump` task for exporting k-mer to genome mappings as CSV, introduces an `InvalidInput` error variant, updates dependencies to support numerical operations and tree construction, and performs minor module reorganizations.
27 lines
1.5 KiB
Markdown
27 lines
1.5 KiB
Markdown
## Chose à vérifier suite à la commande index
|
|
|
|
- il faudrait lister les fichier qui vont être indexés
|
|
- partition.meta ne devrait plus exister
|
|
- les spectrums globaux devrait etre identifier par génome
|
|
- regrouper dans un sous-dossier spectrums à la racine de l'index avec un nom basé sur le génome
|
|
- les spectrum patiels ont-ils vocation à être conserver ?
|
|
- l'étape de déreplication dure quasiment autant de temps que le comptage mais ne laisse aucune trace de progression à l'utilisateur
|
|
|
|
## commandes à ajouter
|
|
|
|
- filter : produit un nouvel index filtré à partir d'un index existant en verifiant que les kmer présents dans le nouvel index respectent les critères de filtrage spécifiés
|
|
- quorum de presence en fraction-(min/max) du nombre de génomes, en nombre-(min/max) de génomes, si mode count la présence peut être défini par un seuil personnalisé minimum et maximum
|
|
|
|
- aggregate : aggrege toutes les colonnes d'une matrice d'index en une seule colonne.
|
|
|
|
- query : scan un fichier de sequences et retourne pour chaque sequence quels kmer sont présents dans l'index et dans quel genomes
|
|
|
|
- distance : calcule la matrice de distance entre les genomes
|
|
- proposer une option pour chaque distance à calculer
|
|
- un possibité de récuperer la matrice des kmer communs
|
|
- un possibité de calculer l'arbre nj
|
|
- les matrices sont sauvegardées en CSV
|
|
- les arbres NJ sont sauvegardés en Newick avec les longeurs de branche
|
|
|
|
- status : affiche le statut de l'index
|