Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
fr:impilopedia:genex:rnaseq:airway_project:fetching_raw_data [2026/06/15 07:27] – [Protocole - Pour commencer] foisysfr:impilopedia:genex:rnaseq:airway_project:fetching_raw_data [2026/06/15 09:41] (Version actuelle) – [Protocole - Téléchargement simple] foisys
Ligne 71: Ligne 71:
 # Inclure les libraries qui seront nécessaires... # Inclure les libraries qui seront nécessaires...
 import csv import csv
-import gzip 
-import os 
-import shutil 
 import subprocess import subprocess
 import time import time
Ligne 127: Ligne 124:
        # Téléchargement        # Téléchargement
        #*********************        #*********************
-       # Ça ne fonctionnera que si l'application est sur $PATH+       # Ça ne fonctionnera que si les applications est sur $PATH
        # L'utilisation de la méthode run assure que les commandes seront        # L'utilisation de la méthode run assure que les commandes seront
        # effectuée une à la fois.        # effectuée une à la fois.
Ligne 170: Ligne 167:
        # Compressons maintenant les fichiers sur notre stockage        # Compressons maintenant les fichiers sur notre stockage
        # Les outils à venir sont tous capables de lire les fichiers         # Les outils à venir sont tous capables de lire les fichiers 
-       # comprimés+       # comprimés.  
 +       # 
 +       # On utilise le progamme bgzip, installé sur Impilo, pour faire 
 +       # une compression multi-fils et accélérer le processus.
        #        #
        # Comme on fait deux fois la même procédure (sur chaque fichier),         # Comme on fait deux fois la même procédure (sur chaque fichier), 
Ligne 178: Ligne 178:
        for k in range(2):        for k in range(2):
          k = k+1          k = k+1
-         with open(f"{saveF}/{nameF}_{k}.fastq", 'rb') as z_in: 
-           with gzip.open(f"{saveF}/{nameF}_{k}.fastq.gz", 'wb') as z_out: 
-             shutil.copyfileobj(z_in, z_out) 
-           z_out.close() 
-         z_in.close() 
          #          #
-         # Le fichier non compressé n'est plus utile..+         # Pas besoin d'effacer le fichier .fastq; bgzip le fera après la  
-         #  +         # compression 
-         os.remove(f"{saveF}/{nameF}_{k}.fastq")+         
 +         subprocess.run(["bgzip","--threads","4",f"{saveF}/{nameF}_{k}.fastq"])
 </sxh> </sxh>
  
-  * À la fin de l'exécution, vous devriez avoir 32 fichiers dont l'extension se termine par ''_x.fastq.gz'' avec x=1 ou x=2.  Les fichiers devraient se trouver dans le bons répertoire avec un nom sous la forme ''traitement_ligneeCellulaire_SRAuid'', ce qui nous facilitera la vie pour la suite :-)+  * À la fin de l'exécution, vous devriez avoir 32 fichiers dont l'extension se termine par ''_x.fastq.gz'' avec x=1 ou x=2.  Les fichiers devraient se trouver dans le bons répertoire avec un nom sous la forme ''traitement_ligneeCellulaire_SRRxyz'', ce qui nous facilitera la vie pour la suite :-)
  
-  * De plus, vous devriez avoir pour certains échantillons un autre fichier se terminant simplement par ''.fastq''; ce fichier existe car certains échantillons ont généré plusieurs lectures qui n'ont pas d'équivalent entre les deux fichiers pour toute sorte de raison: séquences techniques comme les codes barres ou bien des séquences d'amorces ou autres séquences sans correspondance . On ne veut pas utiliser ces fichiers donc le paramètre ''--split-3'' nous permet de les retirer en amont plutôt que de devoir le faire post-alignement.+  * De plus, vous devriez avoir pour certains échantillons un autre fichier se terminant simplement par ''.fastq'' ou sans extension mais avec le même nom; ce fichier existe car certains échantillons ont généré plusieurs lectures qui n'ont pas d'équivalent entre les deux fichiers pour toute sorte de raison: séquences techniques comme les codes barres ou bien des séquences d'amorces ou autres séquences sans correspondance . On ne veut pas utiliser ces fichiers donc le paramètre ''--split-3'' nous permet de les retirer en amont plutôt que de devoir le faire post-alignement.
  
 ===== Protocole - Téléchargement sur serveur et traitement sur grappe de calcul ===== ===== Protocole - Téléchargement sur serveur et traitement sur grappe de calcul =====