Difference between revisions of "Diag pipeline"
| (7 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
| − | + | = Basic usage = | |
| − | + | == With Docker == | |
| + | |||
| + | == Whithout Docker == | ||
| + | |||
| + | === Setup reference data === | ||
| + | |||
| + | ==== Core genome ==== | ||
| + | |||
| + | ==== VFDB database ==== | ||
| + | |||
| + | = Advanced usage = | ||
| + | |||
| + | == change snp caller == | ||
| + | == perform snp calling complete genome == | ||
| + | == perform snp calling on other reference than the pre-defined reference == | ||
| + | == use custom virulence database == | ||
| + | |||
| + | = Dev = | ||
| + | |||
| + | == report == | ||
https://github.com/pnnl/hundo/blob/master/hundo/scripts/build_report.py | https://github.com/pnnl/hundo/blob/master/hundo/scripts/build_report.py | ||
https://pnnl.github.io/hundo/ | https://pnnl.github.io/hundo/ | ||
| + | |||
| + | == Gestion des différents types de références == | ||
| + | |||
| + | === cgMLST === | ||
| + | |||
| + | Le cgMLST est un sous ensemble d'une autre référence. Il faut faire bien attention à ne pas appliquer certaines règles à cette référence mais à récupérer les données obtenues sur le génome complet. | ||
| + | |||
| + | Rapport: par ex pas de multiqc pour la référence cgMLST, il faut rapporter le rapport obtenu sur le génome complet. | ||
| + | |||
| + | Possibilités de résolution: | ||
| + | |||
| + | 1. faire une fonction avec conditions pour générer la liste des output adéquate: | ||
| + | |||
| + | |||
| + | <syntaxhighlight lang="Bash" line='line'> | ||
| + | def get_indel_file_list(sample_list, reference_genomes): | ||
| + | "report/indel/79781/bwa/TATRas-control.html" | ||
| + | pairs = list(itertools.product(reference_genomes, sample_list)) | ||
| + | all_outputs = [] | ||
| + | for pair in pairs: | ||
| + | pair = list(pair) | ||
| + | if pair[0] == 'cgMLST': | ||
| + | continue | ||
| + | path = "report/indel/%s/bwa/%s.html" % (pair[0], pair[1]) | ||
| + | all_outputs.append(path) | ||
| + | return all_outputs | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | 2. opérer des filtre dans un expand: | ||
| + | |||
| + | |||
| + | <syntaxhighlight lang="Bash" line='line'> | ||
| + | multiqc_mapping_list = expand("report/multiqc_mapping_to_{reference}/bwa/multiqc_report.html", reference=[i for i in reference_genomes_dir if i != "cgMLST"] + [str(all_core_genome_dbs.loc[species, "ReferenceGenome"])]), | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | === génome assemblé vs génome téléchargé du NCBI === | ||
| + | |||
| + | Si l'identifiant d'un génome fait partie des échantillons listés dans '''local_samples.tsv''', il s'agit d'une référence assemblée qui sera nomée par la suite "'''full_genome_<id>_assembled_genome'''". Si il s'agit d'un identifiant numérique non listé dans la table, on part du principe qu'il s'agit d'un ID du NCBI. Cf '''making_sample_dataset.rules''' qui prépare la list des références. | ||
| + | |||
| + | == SNP calling == | ||
Latest revision as of 14:46, 29 November 2018
Basic usage
With Docker
Whithout Docker
Setup reference data
Core genome
VFDB database
Advanced usage
change snp caller
perform snp calling complete genome
perform snp calling on other reference than the pre-defined reference
use custom virulence database
Dev
report
https://github.com/pnnl/hundo/blob/master/hundo/scripts/build_report.py
Gestion des différents types de références
cgMLST
Le cgMLST est un sous ensemble d'une autre référence. Il faut faire bien attention à ne pas appliquer certaines règles à cette référence mais à récupérer les données obtenues sur le génome complet.
Rapport: par ex pas de multiqc pour la référence cgMLST, il faut rapporter le rapport obtenu sur le génome complet.
Possibilités de résolution:
1. faire une fonction avec conditions pour générer la liste des output adéquate:
1def get_indel_file_list(sample_list, reference_genomes):
2 "report/indel/79781/bwa/TATRas-control.html"
3 pairs = list(itertools.product(reference_genomes, sample_list))
4 all_outputs = []
5 for pair in pairs:
6 pair = list(pair)
7 if pair[0] == 'cgMLST':
8 continue
9 path = "report/indel/%s/bwa/%s.html" % (pair[0], pair[1])
10 all_outputs.append(path)
11 return all_outputs
2. opérer des filtre dans un expand:
1multiqc_mapping_list = expand("report/multiqc_mapping_to_{reference}/bwa/multiqc_report.html", reference=[i for i in reference_genomes_dir if i != "cgMLST"] + [str(all_core_genome_dbs.loc[species, "ReferenceGenome"])]),
génome assemblé vs génome téléchargé du NCBI
Si l'identifiant d'un génome fait partie des échantillons listés dans local_samples.tsv, il s'agit d'une référence assemblée qui sera nomée par la suite "full_genome_<id>_assembled_genome". Si il s'agit d'un identifiant numérique non listé dans la table, on part du principe qu'il s'agit d'un ID du NCBI. Cf making_sample_dataset.rules qui prépare la list des références.