Ceci est une ancienne révision du document !
Mise en pratique des méthodes d'analyse de l'expression génique grâce aux données utilisées par le package airway: analyse de la qualité des séquences brutes
Introduction
Les différentes méthodes de séquençage à haut débit ne sont pas totalement infaillibles dans leur capacité à faire le dit séquençage! Elles sont toutes basées sur des processus qui à divers moments de la méthode, peuvent engendrer des problèmes comme des échantillons de qualité discutable, des erreurs de lecture, des séquences partielles dans l'ensemble d'un fichier (rappel: chaque fichier contient des millions de séquences), etc. Il nous faudra dans une étape subséquente retirer toute donnée de séquence qui pourra perturber les reste de notre analyse; pour établir les critères de filtration, il nous faut regarder le profil de nos données brutes. Quoi utiliser? Dans la communauté, dans le moment, les deux applications les plus utilisées sont FastQC et fastP, qui toutes les deux vont créer des rapports sous la forme de pages web qui permettront de vous donner un aperçu de vos données et qui vous permettront de déterminer les meilleurs critères de filtration dans l'étape suivante.
Pour une première fois, on a une situation où l'on doit faire à répétition la même opération sur tous les fichiers FASTQ que nous avons téléchargé. On pourrait faire 32 fois la même opération mais, soyons sérieux, c'est à ça que sert une grappe de calcul et Python Pourquoi ne pas utiliser Python pour écrire tous les fichiers
bash à soumettre à SLURM? À la base, il faudrait encoder statiquement tous les paramètres à soumettre dans notre script, ce qui le rend peu flexible… Introduisons un autre outil: un fichier de configuration à lire par notre script. Comment écrire ce fichier de paramètres? En utilisant un fichier texte écrit dans un format structuré qui pourra être lu par le script pour construire une structure de données directement utilisable. Un tel format est le format YAML, très flexible et facilement interprété par Python.
Protocole
- Dans un premier temps, construisons un fichier texte en format YAML pour y mettre nos paramètres:
#
# qc_airway.yaml - Un fichier de paramètres à soumettre aux scripts
# de QC utilisant FASTQC ou FastP
#
# Est-ce qu'on veut créer les scripts sans les soumettre?
# Mettre à false pour lancer les tâches sur SLURM
#
dry_run: true
#
# Ou se trouve les données brutes?
#
path2raw: /shares/data/rnaseq/airway
#
# Ou écrire les données de QC obtenues par
# FASTQC ou FastP?
#
path2qc: /home/username/analysis/rnaseq/airway/1.fastq_raw_qc
#
# Conditions utilisées sur les lignées cellulaires
# Doit être les mêmes que celles du répertoire
# /shares/data/rnaseq/airway
#
condition:
- alb
- alb_dexa
- dexa
- dmso
#
# Identification des lignées cellulaires
#
cellline:
- N052611
- N061011
- N080611
- N61311
#
# Quel outil utilisé? Ce paramètre est obligatoire
# pour la suite
#
tool: fastqc
#tool: fastp
#
# Paramètres spécifiques pour chaque outil à utiliser
# pour chaque soumission. NE PAS METTRE DE PARAMÉTRES
# SPÉCIFIQUES! Ils seront construit par le script lui-même
# Assurez-vous d'utiliser les bons!! Vérifier la doc de
# chaque outil au besoin. Si possible, utiliser les mêmes noms
# que ceux attendu par le programme.
#
# Dans l'exemple, FASTQC ne demande que le nombre de CPU pour
# faire l'analyse
#
toolParams:
#
# Combien de processeurs utilisés?
#
threads: 4