Quelques pistes pour contrôler vos données de ChIP-seq

par

dans

Le ChIP-seq est une méthode aujourd'hui répan­due qui consiste à cibler une par­tie du génome grâce à une pro­téine et à séquen­cer uni­que­ment les par­ties du génome aux­quelles celle-ci s'est fixée. On la cap­ture ensuite avec un anti­corps spé­ci­fique et on séquence uni­que­ment l'ADN qu'elle pro­té­geait (voir notre article : DNase-seq, FAIRE-seq, ChIP-seq, trois outils d'analyse de la régu­la­tion de l'expression des gènes ). La tech­nique a été adap­tée à de nom­breuses sources d'intérêt (fac­teur de trans­crip­tion, nucléo­some, ARN poly­mé­rase…), mais l'objectif reste tou­jours le même, éta­blir une carte du génome mar­quant les zones où la pro­téine s'est fixée. Fina­le­ment avec cette carte on peut par exemple cher­cher un motif de fixa­tion (voir notre article : Soi­rée BED & FASTA ! ) ou encore cher­cher si les gènes mar­qués appar­tiennent à une famille par­ti­cu­lière.

ADN légo par mknowels (https://www.flickr.com/photos/mknowles/)
ADN légo par mkno­wels

Dans cet article je vais détailler cer­taines étapes de la pré­pa­ra­tion des don­nées de ChIP-seq, ce que vous pou­vez faire une fois que vous avez reçu vos don­nées au for­mat fastq (voir notre article :  Ana­lyse des don­nées de séquen­çage à ARN). Le "pro­to­cole" ici détaillé est très for­te­ment ins­pi­ré des articles cités en bas de page, je vous conseille donc de les consul­ter si vous ne crai­gnez pas la langue de Sha­kes­peare. Vous pou­vez éga­le­ment consul­ter notre article, très com­plet, sur le trai­te­ment des don­nées de RNA-seq, qui vous don­ne­ra de très bons conseils pour la pré­pa­ra­tion et l'analyse de vos don­nées. Même si RNA-seq et ChIP-seq sont dif­fé­rents, cer­taines étapes de leur pré­pa­ra­tion sont simi­laires.

Avant même d'avoir vos don­nées, sachez que pour une expé­rience de ChIP-seq il est indis­pen­sable d'avoir un échan­tillon contrôle, cela peut être un séquen­çage sans immu­no­pré­ci­pi­ta­tion ou avec un anti­corps non spé­ci­fique, qui ne cible­ra rien sur votre génome. Ces don­nées vous ser­vi­ront à déter­mi­ner le bruit de fond de votre séquen­çage. Il est éga­le­ment très très for­te­ment conseillé de faire des répli­cats bio­lo­giques, ils ser­vi­ront à déter­mi­ner les simi­li­tudes et la repro­duc­ti­bi­li­té des infor­ma­tions trou­vées.
Après ali­gne­ment sur le génome de réfé­rence des don­nées de ChIP-seq, on recherche des pics (voir le para­graphe 'Recherche de pics') for­més par l'accumulation de séquences aux endroits où la pro­téine s'est fixée, mais on séquence éga­le­ment d'autres par­ties du génome, c'est le bruit de fond. Le contrôle et les répli­cats vous ser­vi­ront à sépa­rer le vrai du faux.

 

Contrôle qualité du séquençage

Le séquen­çage à haut débit n'est pas une tech­nique par­faite et cer­taines erreurs sont connues. On sait par exemple que la fin des séquences pro­duites par la machine sont sou­vent de moins bonne qua­li­té que le début. Pour véri­fier que tout c'est bien pas­sé, voi­ci quelques tests que vous pou­vez effec­tuer.

La pre­mière infor­ma­tion que l'on peut véri­fier est sim­ple­ment si le nombre de lec­tures (séquences obte­nues par séquen­çage à haut débit) est suf­fi­sant pour l'analyse. Les don­nées de ChIP-seq peuvent être divi­sées en trois caté­go­ries en fonc­tion de la forme de leurs pics :
— Pics fins, peu éten­dus et qui pour­ront être réduits à une posi­tion pré­cise sur le génome. On obtient ce genre de pic en étu­diant les fac­teurs de trans­crip­tion et cer­taines marques de chro­ma­tine.
— Pics larges/​étendus, ici c'est une zone enri­chie en séquences plus qu'une posi­tion qui sera mar­quée. On obtient ces pics avec cer­taines marques de chro­ma­tine et l'étude de RNA Pol II par exemple.
— Pics mixtes, un mélange des deux pre­miers, les pics fins trou­vés appar­te­nant à des zones plus larges enri­chies en séquences.

Du type de pics pro­duit par vos don­nées, dépend la quan­ti­té de lec­tures qu'il vous fau­dra. Pour un génome de mam­mi­fère, il est conseillé d'avoir 20 mil­lions de lec­tures pour la recherche de pics fins et entre 40 et 60 mil­lions de lec­tures pour les pics éten­dus (20–30 mil­lions par répli­cats).

Dans le même temps vous pou­vez contrô­ler la qua­li­té de vos séquences (score phred) et la dis­tri­bu­tion des nucléo­tides. Un dés­équi­libre dans la dis­tri­bu­tion des nucléo­tides dans un échan­tillon est sou­vent le signe d'un pro­blème de séquen­çage, par exemple si la machine a pro­duit des erreurs ou alors si vous avez séquen­cé des adap­ta­teurs ou autres séquences qui ne vous inté­ressent pas. Il existe des logi­ciels qui feront ces contrôles pour vous et pro­dui­ront éga­le­ment des gra­phiques pour faci­li­ter la lec­ture des résul­tats (e.g FASTX-tool­kit).

Une autre infor­ma­tion que vous pou­vez véri­fier c'est la pré­sence de séquences dupli­quées. Le séquen­çage de vos don­nées va pro­ba­ble­ment pro­duire des séquences iden­tiques, mais il ne faut pas que celles-ci soient trop abon­dantes, avec un petit peu de code bash et awk vous pour­rez comp­ter la pro­por­tion des séquences répé­tées et détec­ter une conta­mi­na­tion par des adap­ta­teurs ou autres (voir le "Nature pro­to­col" en lien à la fin de l'article).

En fonc­tion de la qua­li­té de votre séquen­çage, il peut être utile de reti­rer une par­tie des lec­tures si leur qua­li­té est trop faible, ou encore de cou­per la fin des séquences si la qua­li­té dimi­nue dras­ti­que­ment le long du séquen­çage, avec le logi­ciel sickle par exemple. Quoi qu'il en soit il est conseillé de gar­der une taille unique pour les lec­tures, car deux séquences de tailles dif­fé­rentes n'ont pas les mêmes pro­prié­tés d'alignements et cela va créer une varia­tion sup­plé­men­taire dans votre échan­tillon.

 

Alignement

Main­te­nant que vous êtes sûr de la qua­li­té de votre séquen­çage, vous pou­vez pas­ser à l'ali­gne­ment (map­ping) et à la recherche de pics (peak cal­ling). L'alignement est une étape com­mune à toutes les don­nées de séquen­çages, il s'agit sim­ple­ment de cher­cher l'origine de votre séquence sur le génome. Le fichier obte­nu vous indique la posi­tion de chaque lec­ture sur le génome et vous per­met donc de savoir ce que vous avez séquen­cé. Vous trou­ve­rez plus d'informations sur notre site dans nos articles sur la pré­pa­ra­tion de don­nées de RNA-seq et leur ana­lyse. Per­son­nel­le­ment j'utilise Bowtie2 pour mes don­nées de ChIP-seq, mais il existe une mul­ti­tude de map­per (BWA, GEM, STAR…) n'hésitez pas à don­ner vos pré­fé­rences en com­men­taire.

Vos don­nées sont main­te­nant ali­gnées, il y a de grandes chances pour que vous ayez un fichier SAM ou BAM entre les mains. Si vous avez un SAM uti­li­sez SAM­tools pour chan­ger de for­mat et obte­nir un BAM, il s'agit du même fichier mais en binaire, ça vous per­met d'économiser beau­coup de place sur votre disque dur et la plu­part des logi­ciels uti­lisent ce for­mat. Cela dit en fonc­tion des don­nées et des logi­ciels que vous uti­li­se­rez, vous devrez peut-être éga­le­ment les conver­tir en fichier BED, uti­li­sez BED­tools pour chan­ger de for­mat (celui-ci prend plus de place sur le disque).

 

Qualité de l'échantillon après alignement

Avoir des séquences de qua­li­tés et leurs posi­tons sur le génome, c'est bien, mais ce n'est pas suf­fi­sant. Les don­nées de ChIP-seq ont des pro­prié­tés par­ti­cu­lières, prin­ci­pa­le­ment parce qu'on ne séquence qu'une par­tie infime de génome, celle mar­qué par notre pro­téine. Voi­ci quelques tests pour véri­fier que votre échan­tillon se com­porte bien comme atten­du :

- Après ali­gne­ment des don­nées sur le génome, vous pou­vez véri­fier le nombre de lec­tures qui s'alignent à une posi­tion unique sur le génome (au moins un tiers de vos séquences) et la pro­por­tion de ces lec­tures dont la séquence en nucléo­tide est unique (au moins 50%). Vous pou­vez éga­le­ment cal­cu­ler le score NRF (Non-Redun­dant Frac­tion) = (Nombre de lec­tures uniques)/(nombre de lec­tures ali­gnées uni­que­ment). Il est conseillé d'avoir un NRF supé­rieur ou égal à 0,8 pour un échan­tillon avec 10 mil­lions de lec­tures.

- Le logi­ciel CHANCE cal­cule pour vous le score "IP strength". Il com­pare la dis­tri­bu­tion des lec­tures dans votre échan­tillon et votre contrôle à des don­nées pro­duites pour le pro­jet ENCODE, le score vous indique le degré de réus­site de votre ChIP-seq. CHANCE pro­duit des gra­phiques pour une ana­lyse visuelle des résul­tats. Atten­tion cepen­dant, comme ENCODE est un pro­jet sur le génome Humain, le logi­ciel est moins/​pas adap­té aux autres orga­nismes.

- Le logi­ciel phan­tom­peak­qual­tools, per­met de cal­cu­ler une série de scores qui vous aide­ront à déter­mi­ner la qua­li­té de votre expé­rience. Les scores NSC (Nor­ma­li­zed Strand Cor­re­la­tion) et RSC (Rela­tive Strand Cor­re­la­tion) sont expli­qués en détails dans le papier ENCODE. Dans les grandes lignes, un pic de ChIP-seq est visible sur le brin plus et sur le brin moins, mais il existe un déca­lage entres ces 2 pics. Ce déca­lage est consi­dé­ré comme la taille du frag­ment mar­qué par la pro­téine. Le logi­ciel cal­cule la cor­ré­la­tion entre les pics du brin plus et du brin moins, ce qui pour une expé­rience de ChIP-seq réus­si pro­duit deux pics, un mar­quant la taille des lec­tures et un la taille du frag­ment. Le NSC est le rap­port entre le score de cor­ré­la­tion trou­vé pour le frag­ment et le score mini­mum et RSC est le rap­port entre le score de cor­ré­la­tion pour le frag­ment moins la cor­ré­la­tion mini­mum et le score pour la taille des lec­tures moins la cor­ré­la­tion mini­mum. Pour le pro­jet ENCODE, les échan­tillons avec une qua­li­té trop faible (i.e NCS<1,05 ou RSC<0,8) sont séquen­cés de nou­veau.

 

Recherche de pics

La recherche de pics ou peak cal­ling est l'étape essen­tielle de l'analyse de ChIP-seq. C'est ici que vous allez déter­mi­ner quelles posi­tions du génome ont été mar­quées par votre expé­rience et la qua­li­té de votre ana­lyse dépend direc­te­ment de ce résul­tat. Toute la dif­fi­cul­té réside dans le fait de pou­voir dis­tin­guer le bruit de fond des zones mar­quées par votre pro­téine. La pré­sen­ta­tion de cette étape mérite à elle seule un article, cepen­dant, comme pour l'alignement je ne vais pas trop ren­trer dans les détails.

Comme dit pré­cé­dem­ment, il existe plu­sieurs types de don­nées en ChIP-seq pour le peak cal­ling sur les échan­tillons avec des pics fins et mixés MACS2 fonc­tionne très bien et SICER pour les échan­tillons avec des pics larges (Il existe beau­coup de logi­ciels, n'hésitez pas à par­ler de vos pré­fé­rences dans les com­men­taires). Dans tout les cas il existe une série de valeurs que vous pou­vez faire varier et qui influen­ce­ront le résul­tat final. Les deux logi­ciels sus-nom­més uti­lisent une fenêtre pour par­cou­rir le génome et déter­mi­ner les zones enri­chies en lec­tures. Vous pou­vez faire varier la taille de la fenêtre, des gaps (trous) auto­ri­sés à l’intérieur d'un pic, du shift (dépla­ce­ment d'une lec­ture à l’intérieur de la fenêtre)… selon les valeurs don­nées votre peak cal­ling sera plus ou moins res­tric­tif. La plu­part des logi­ciels donnent un score aux pics trou­vés, FDR (False Dis­co­ve­ry Rate) ou p‑value, en jouant avec ces valeurs vous pou­vez pas­ser de quelques cen­taines à plu­sieurs mil­liers de pics trou­vés.
Comme ces logi­ciels uti­lisent une fenêtre, il est pos­sible que deux pics soient fusion­nés si ils sont trop proches. Il existe éga­le­ment quelques logi­ciels pour raf­fi­ner vos résul­tats et éven­tuel­le­ment sépa­rer ces pics (PeakS­plit­ter, GPS, poly­aPeak, nar­row­Peaks).

Un pre­mier score que vous pou­vez cal­cu­ler sur votre peak cal­ling est le FRiP (Frac­tion of Reads in Peaks) : Il s'agit sim­ple­ment de comp­ter le nombre de lec­tures étant dans un pic. Le pro­jet ENCODE recom­mande un FRiP de 1% au mini­mum, tout en pré­ci­sant que cette valeur peut ne pas fonc­tion­ner pour cer­tains échan­tillons, comme ceux avec très peu de sites ciblé sur le génome.

 

Reproductibilité de l'expérience

La com­pa­rai­son entre échan­tillons peut bien sûr ser­vir pour confron­ter deux condi­tions, mais éga­le­ment deux répli­cats, afin de vali­der les pics trou­vés. En effet comme il est dif­fi­cile de sépa­rer signal et bruit de fond, on uti­lise les répli­cats pour vali­der les pics. Si un pic est pré­sent et fort dans deux répli­cats c'est cer­tai­ne­ment un bon signe. Pour faire cela on peut uti­li­ser deux scores :

- PCC (Pear­son Cor­re­la­tion Coef­fi­cient) : La cou­ver­ture par des lec­tures de chaque posi­tion du génome est com­pa­rée entre deux échan­tillons, don­nant au final un score de cor­ré­la­tion. Deux répli­cats devraient avoir un score supé­rieur à 0,9 là où deux échan­tillons sans rap­port auront un score de 0,3–0,4 (voir "Nature Pro­to­col").

- IDR (Irre­pro­du­cible Dis­co­ve­ry Rate) : On classe les pics de deux échan­tillons sur leur valeur de FDR, p‑value ou autres cri­tères mon­trant la pro­ba­bi­li­té d'être un vrai pic. Si on com­pare deux répli­cats, les pics les plus forts devraient être plus consis­tants que les pics faibles. Sur un graphe pro­duit à par­tir des deux listes de pics, clas­sées par FDR par exemple, et mon­trant la consis­tance entre les deux clas­se­ments, on devrait voir une tran­si­tion entre les pics avec un fort FDR (pré­sent dans les deux répli­cats) et les pics avec un faible FDR. Le logi­ciel phan­tom­peak­qual­tools per­met de cal­cu­ler le score IDR qui indique pour chaque pic si il a plus de chance d’appartenir au groupe des pics repro­duc­tibles ou à celui des pics non repro­duc­tibles.

Pour aller plus loin :
ChIP-seq gui­de­lines and prac­tices of the ENCODE and modEN­CODE consor­tia.
A com­pu­ta­tio­nal pipe­line for com­pa­ra­tive ChIP-seq ana­lyses.
Eva­lua­tion of Algo­rithm Per­for­mance in ChIP-Seq Peak Detec­tion
Prac­ti­cal Gui­de­lines for the Com­pre­hen­sive Ana­ly­sis ofChIP-seq Data

_​_​_​_​_​_​_​_​_​_​_​_​_​_​_​_​_​
Cet article ne couvre que le pré-trai­te­ment des don­nées de ChIP-seq, l'objectif ici est de vous indi­quer quelques tests à faire pour véri­fier la qua­li­té de vos don­nées et les logi­ciels qui per­mettent de pro­duire cer­tains d'entre eux. Pour l'analyse de vos don­nées, je vous conseille de lire les articles mis en réfé­rence. Vous trou­ve­rez des détails sur les scores pré­sen­tés, mais aus­si d'autres infor­ma­tions sur la nor­ma­li­sa­tion, la visua­li­sa­tion et sur les ana­lyses pos­sibles avec des don­nées de ChIP-seq (Motif fin­ding, com­pa­rai­son entre dif­fé­rentes condi­tions…).

 

Mer­ci aux relec­teurs, ook4mi, bun­ny, nahoy et Nel­ly.



Pour continuer la lecture :


Commentaires

Une réponse à “Quelques pistes pour contrôler vos données de ChIP-seq”

  1. Quel livre de bio­in­for­ma­tique me conseillez vous ? J'en veux un qui parle bien sûr du lan­gage Python.

Laisser un commentaire