Lorsqu’il est question de générer une image Circos, la mise en forme des données est une des étapes les plus importantes. Voici quelques points clés pouvant vous aider à éviter le redoutable ***CIRCOS ERROR***.

Tous les fichiers de données doivent être en format texte, c’est-à-dire avoir une extension .txt et utiliser une tabulation comme séparateur.  R s’avère très utile pour générer les fichiers dans le format requis.  Avec l’aide de R,  je peux générer un fichier myData.txt qui par la suite, sera incorporé dans un de mes fichiers de configuration. Les fichiers de données sont nécessaires pour la création de représentations graphiques en 2 dimensions, pour le positionnement d’étiquettes  (qui sont en en réalité considérées comme une sorte de graphique), ainsi que pour la représentation de liens entre deux positions de chromosomes. Pour savoir comment faire la mise en forme du fichier de données, il faut d’abord savoir ce que l’on veut représenter (graphiques 2-d, étiquettes, liens).

Type de représentation de données Graphiques Étiquettes Liens
Colonnes requises chr    start    end     val chr     start       end       label chr1   start1  end1    chr2      start2   end2
Exemple chr1  1000   1199   1.00
chr1  1200   1399    15.00
chr1  1400   1599    -2.00
chr1   11873   14409   DDX11L1
chr1   14361   29370   WASH7P
chr1   17368   17436   MIR6859-1
chr1   486     769      chr15   10026   10033
chr1   3426   3938     chr15   10021   10026
chr1   5763   6268     chr15   10021   10026

D’autres paramètres peuvent être ajoutés après la dernière colonne (respectivement  val/label/end2 pour les graphiques, étiquettes et liens).  On pourrait ajouter une colonne pour la couleur  (color) par exemple.   Dans cet  article, nous allons toutefois nous en tenir à la mise en forme classique. Notons qu’avec ou sans ces paramètres additionnels, les étapes restent très similaires.

Maintenant que l’on sait comment illustrer nos données, nous pouvons commencer à les formater. Importez tout d’abord les données brutes dans R en créant un nouveau ‘data frame’.

> data_df <- read.table("myRawData.txt", header = TRUE, sep = "\t", as.is = TRUE)

Puis travaillez vos données comme vous le feriez en temps normal. Par exemple, vous pourriez calculer des moyennes, des écarts-types ou vous pourriez filtrer vos données en appliquant un test statistique et conserver seulement les valeurs jugées significatives. Cette étape est complètement à votre guise!

Il faut absolument conserver sur quel chromosome telle valeur se trouve, ainsi que sa position de départ et de fin. Une bonne façon de faire cela est de travailler vos données dans une table. De la sorte, vous pouvez avoir une colonne avec les valeurs , une colonne avec le chromosome et deux autres avec la position initiale et finale. Toutes les autres colonnes de cette table sont à votre discrétion.

Lorsque vous êtes prêts à enregistrer vos données manipulées dans un nouveau fichier, créez une nouvelle table dans laquelle les colonnes correspondent au bon format, tel que représenté dans le tableau plus haut. Si vous travailliez déjà avec une table, assurez-vous que les colonnes soient dans le bon ordre. Pour exporter vos données de façon efficace, vous pourriez utiliser cette simple ligne de code:

> write.table(myDataTable, file = "myData.txt", row.names = FALSE, col.names = FALSE, sep = "\t", quote = FALSE)

myDataTable est le nom de la table à exporter, tandis que myData.txt est le nom du fichier texte résultant. Le format Circos ne permet pas les noms de rangées, d’où row.names = FALSE. Cela dit, les noms de colonnes sont acceptés jusqu’à un certain point, mais l’appellation doit être exacte et doit correspondre à celle attendue par le programme. Pour éviter toute erreur, je vous conseille d’exporter votre table sans les étiquettes de colonnes et d’utiliser col.names = FALSE. L’argument de séparation sep = « \t » assure que chaque entrée de chaque rangée sera séparée par une tabulation, ce qui est préféré par Circos.  Finalement, quote = FALSE fait en sorte que tous les guillemets («  ») seront supprimés dans l’appellation des chromosomes et étiquettes. Ce dernier détail est très important, car la présence de guillemets peut facilement causer une erreur du côté de Circos.

Enfin, pour être sûr d’éviter les erreurs, révisez vos fichiers de données avant des les utiliser.

Plusieurs ***CIRCOS ERROR*** peuvent être évitées lorsque l’on sait comment bien formater ses fichiers de données!