BED (format de fichier)

Le format BED (ou format Browser Extensible Data) est un format de fichier texte utilisé pour stocker des régions génomiques sous forme de coordonnées ainsi que les annotations associées. Les données se présentent sous forme de colonnes séparées par des espaces ou bien des tabulations. Ce format fut développé au cours du Projet Génome Humain[1] puis adopté par d'autres projets de séquençage. De par cette utilisation de plus en plus large, ce format est devenu un standard de facto en bioinformatique sans pour autant recevoir de spécifications officielles.

Pour les articles homonymes, voir BED.

L'un des avantages de ce format réside dans la manipulation de coordonnées en lieu et place de séquences nucléotidiques permettant une optimisation de la puissance et du temps de calculs lors de la comparaison tout ou partie de génomes. De plus, sa simplicité rend la manipulation et la lecture (ou parsing) des coordonnées ou des annotations aisée par l'utilisation d'outils de traitement de texte et de langages de script tels que Python, Ruby ou Perl ou par des outils plus spécialisés tel que BEDTools.

Historique

La fin du XXe siècle vit l'émergence des premiers projets de séquençage de génomes complets. Parmi ces projets, le Projet Génome Humain fut alors le plus ambitieux visant à séquencer pour la première fois un génome de plusieurs gigabases. Ceci obligea les centres de séquençage à un important développement méthodologique afin d'automatiser le traitement des séquences et leurs analyses. Ainsi de nombreux formats furent créés tels que FASTQ[2], GFF ou encore BED[1]. Cependant aucune spécification officielle ne fut éditée, ce dont certains formats telle que FASTQ[2] souffrirent par la suite lors de la multiplication des projets de séquençage au début du XXIe siècle.

Sa large utilisation au sein de l'Explorateur de Génomes (Genome Browser) a permis de définir ce format de façon relativement stable, cette description étant reprise par de nombreux outils.

Format

Le format BED ne possède aucune spécification officielle. Cependant, la description fournie par l'Explorateur de Génomes de l'UCSC[3] est largement utilisée.

Description

Un fichier BED est constitué d'un minimum de trois colonnes auxquelles peuvent être adjointes neuf colonnes facultatives pour un total de douze colonnes. Les trois premières colonnes contiennent les noms de chromosomes ou de scaffolds, les coordonnées de départ et de fin des séquences considérées. Les neuf colonnes suivantes contiennent des annotations relatives à ces séquences. Ces colonnes doivent être séparées par des espaces ou bien des tabulations, ces dernières étant préconisées pour des raisons de compatibilité entre programmes[4]. Chaque ligne d'un fichier doit avoir le même nombre de colonnes. L'ordre des colonnes doit être respecté : si des colonnes ayant des numéros élevés sont utilisées, les colonnes de numéros intermédiaires doivent être remplies.

Colonnes composant un fichier BED (en rouge les colonnes obligatoires)
Numéro de colonne Titre Définition
1 chrom Nom des chromosomes (ex. : chr3, chrY, chr2_random) ou des scaffolds (ex. : scaffold10671)
2 chromStart Coordonnée de départ sur le chromosome ou le scaffold pour la séquence considérée (la première base sur le chromosome est numérotée 0)
3 chromEnd Coordonnée de fin sur le chromosome ou le scaffold pour la séquence considérée. cette position est non-inclusive contrairement à chromStart !
4 name Nom de la ligne du fichier BED
5 score Score compris entre 0 et 1000
6 strand Orientation du brin d'ADN (positif ("+") ou négatif ("-"))
7 thickStart Coordonnée de départ à partir de laquelle l'annotation est affichée de façon plus épaisse sur une représentation graphique (ex. : le codon start d'un gène)
8 thickEnd Coordonnées de fin à partir de laquelle l'annotation n'est plus affichée de façon plus épaisse sur une représentation graphique (ex. : le codon stop d'un gène)
9 itemRgb Valeur RGB sous forme R,G,B (ex. : 255,0,0) déterminant la couleur d'affichage de l'annotation contenue dans le fichier BED
10 blockCount Nombre de blocs (ex.: exons) sur la ligne du fichier BED
11 blockSizes Liste de valeurs séparées par des virgules correspondant à la taille des blocs (le nombre de valeurs doit correspondre à celui du blockCount)
12 blockStarts Liste de valeurs séparées par des virgules correspondant aux coordonnées de départ des blocs, coordonnées calculées relativement à celles présentes dans la colonne chromStart (le nombre de valeurs doit correspondre à celui du blockCount)

Entête

Un fichier BED peut contenir un entête de façon facultatif. Cependant il n'existe aucune description officielle du format de cet entête. Il peut contenir une ou plusieurs ligne et être signifié par des mots ou symboles différents[4], selon son rôle fonctionnel ou simplement descriptif. Ainsi, une ligne d'entête peut être introduite par :

  • browser : entête fonctionnel utilisé par l'Explorateur de Génomes pour paramétrer des options relatives à ce dernier,
  • track : entête fonctionnel utilisé par l'Explorateur de Génomes pour spécifier des options d'affichage relatives à ce dernier,
  • # : entête descriptif permettant d'ajouter des commentaires tel que le nom de chaque colonne.

Système de coordonnées

Contrairement aux systèmes de coordonnées employés par d'autres standards comme GFF, le système utilisé par le format BED est un système basé sur l'utilisation du 0[4]. Ainsi, la base de coordonnées 1 sur un génome aura une valeur 0 dans la colonne 2 et une valeur 1 dans la colonne 3.

Ce choix se justifie par la méthode de calcul des longueurs des régions génomiques considérées, ce calcul reposant sur la simple soustraction des coordonnées de fin (colonne 3) par celles de début (colonne 2) : . Lorsque le système de coordonnées est basé sur l'utilisation du 1 pour désigner la première position, le calcul devient légèrement plus complexe : . Cette légère différence peut avoir une conséquence relativement importante en termes de temps de calcul lorsque des jeux de données comportant plusieurs milliers à centaines de milliers de lignes sont utilisés.

Exemples types

Voici un exemple minimal :

chr7    127471196    127472363
chr7    127472363    127473530
chr7    127473530    127474697

Voici un exemple type à neuf colonnes issu de l'Explorateur de Génomes :

browser position chr7:127471196-127495720
browser hide all
track name="ItemRGBDemo" description="Item RGB demonstration" visibility=2 itemRgb="On"
chr7    127471196    127472363    Pos1    0    +    127471196    127472363    255,0,0
chr7    127472363    127473530    Pos2    0    +    127472363    127473530    255,0,0
chr7    127473530    127474697    Pos3    0    +    127473530    127474697    255,0,0
chr7    127474697    127475864    Pos4    0    +    127474697    127475864    255,0,0
chr7    127475864    127477031    Neg1    0    -    127475864    127477031    0,0,255
chr7    127477031    127478198    Neg2    0    -    127477031    127478198    0,0,255
chr7    127478198    127479365    Neg3    0    -    127478198    127479365    0,0,255
chr7    127479365    127480532    Pos5    0    +    127479365    127480532    255,0,0
chr7    127480532    127481699    Neg4    0    -    127480532    127481699    0,0,255

Extension de fichier

Il n'existe pas à l'heure actuelle une extension de fichier standard pour les fichiers BED mais l'extension .bed est la plus fréquemment utilisée.

Utilisation de fichiers BED

L'utilisation de fichiers BED s'est répandue rapidement avec l'émergence des nouvelles techniques de séquençage et la manipulation de fichiers de séquences de plus en plus volumineux. En effet, la comparaison de séquences génomiques voire de génomes entiers par la comparaison des séquences elles-mêmes peut rapidement demander d'importantes ressources de calculs et devenir chronophage. La manipulation de fichiers BED rend ce travail plus efficace en utilisant des coordonnées afin d'extraire des séquences d'intérêt de jeux de séquençage ou de comparer et manipuler directement deux jeux de coordonnées.

Pour réaliser ces tâches, divers programmes peuvent être utilisés pour manipuler des fichiers BED dont voici une liste non exhaustive :

  • Explorateur de Génomes (ou Genome Browser) : permet la visualisation et l'extraction de séquences des génomes de mammifères actuellement séquencés à partir de fichier BED (fonction Manage Custom Tracks)
  • Galaxy (bioinformatique) : plate-forme web
  • BEDTools : programme permettant la manipulation de jeux de coordonnées et l'extraction de séquences à partir d'un fichier BED

Références

  1. (en) Kent WJ., Sugnet CW., Furey TS., Roskin KM., Pringle TH., Zahler AM. & Haussler D., « The human genome browser at UCSC. », Genome Research, vol. 12, no 6, , p. 996-1006 (ISSN 1088-9051, PMID 12045153, DOI 10.1101/gr.229102. Article published online before print in May 2002)
  2. (en) Cock PJ., Fields CJ., Goto N., Heuer ML. & Rice PM., « The Sanger FASTQ file format for sequences with quality scores, and the Solexa/Illumina FASTQ variants. », Nucleic Acids Research, vol. 38, no 6, , p. 1767-71 (ISSN 1362-4962, PMID 20015970, DOI 10.1093/nar/gkp1137)
  3. (en) Genome Bioinformatics Group, « Description du format BED », sur UCSC Genome Bioinformatics, University of California Santa Cruz (consulté le )
  4. (en) The BEDTools manual, , 103 p. (lire en ligne)

Voir aussi

Articles connexes

Liens externes

  • Portail de la biologie
  • Portail de la biologie cellulaire et moléculaire
  • Portail de l’informatique
Cet article est issu de Wikipedia. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.