Artykuł metodologiczny

CATCH-UP: potok nadrzędny o wysokiej przepływności dla masowych danych ATAC-Seq i ChIP-Seq

2.1K wyświetleń

DOI:

10.3791/65633

22 września 2023

W tym artykule

Podsumowanie

ATAC-seq i ChIP-seq pozwalają na szczegółowe badanie regulacji genów; jednak przetwarzanie tych typów danych jest trudne i często niespójne między grupami badawczymi. Przedstawiamy CATCH-UP: łatwy w użyciu potok obliczeniowy, który umożliwia ustandaryzowane i powtarzalne przetwarzanie i analizę danych nowych i opublikowanych zestawów danych ATAC/ChIP-seq.

Streszczenie

Test chromatyny dostępnej dla transpozazy (ATAC) i immunoprecypitacji chromatyny (ChIP), w połączeniu z sekwencjonowaniem nowej generacji (NGS), zrewolucjonizowały badania nad regulacją genów. Brak standaryzacji w analizie wielowymiarowych zbiorów danych generowanych tymi technikami utrudnił osiągnięcie odtwarzalności, co doprowadziło do rozbieżności w publikowanych, przetwarzanych danych. Część tego problemu wynika z różnorodnego zakresu dostępnych narzędzi bioinformatycznych do analizy tego typu danych. Po drugie, do sekwencyjnego przekształcania surowych danych w w pełni przetworzone i interpretowalne dane wyjściowe potrzebnych jest szereg różnych narzędzi bioinformatycznych, a narzędzia te wymagają różnych poziomów umiejętności obliczeniowych. Ponadto istnieje wiele możliwości kontroli jakości, które nie są jednolicie stosowane podczas przetwarzania danych. Rozwiązujemy te problemy za pomocą kompletnego testu do sekwencjonowania chromatyny dostępnego dla transpozazy (ATAC-seq) i sekwencjonowania immunoprecypitacji chromatyny (ChIP-seq) upstream pipeline (CATCH-UP), łatwego w użyciu, opartego na Pythonie potoku do analizy masowych zestawów danych ChIP-seq i ATAC-seq od surowych plików fastq do wizualizowalnych ścieżek bigwig i wywołań szczytów. Ten potok jest prosty w instalacji i uruchomieniu, wymaga minimalnej wiedzy obliczeniowej. Potok jest modułowy, skalowalny i równoległy w różnych infrastrukturach obliczeniowych, co pozwala na łatwe raportowanie metodologii w celu umożliwienia powtarzalnej analizy nowych lub opublikowanych zestawów danych.

Wprowadzenie

Ekspresja genów musi być ściśle regulowana, aby komórki mogły ustanowić i utrzymać swoje prawidłowe funkcje biologiczne. Powszechnie wiadomo, że nieprawidłowa ekspresja genów leży u podstaw patogenezy wielu chorób, dlatego też wiele zainteresowań badawczych leży w zrozumieniu mechanizmów regulacji genów1. Ekspresję genów ułatwiają elementy regulatorowe, takie jak promotory i wzmacniacze. W swojej sekwencji elementy te zawierają miejsca wiązania czynnika transkrypcyjnego (TF), które, gdy są aktywne, stanowią platformę do wiązania TF. Wiązanie TF w tych miejscach powoduje przemieszczenie nukleosomów, co skutkuje zwiększeniem dostępności DNA, a co za tym idzie wzrostem dopuszczalności dla maszynerii transkrypcyjnej. W wyniku tej zwiększonej dostępności, te regiony DNA są bardziej wrażliwe na nukleazy i transpozazy, takie jak DNaza i Tn5, właściwość biochemiczna, która została wykorzystana przez naukowców badających regulację transkrypcji2,3.

DNase-seq i ATAC-seq pozwalają badaczom mapować regiony otwartej chromatyny, miejsc wiązania TF i pozycjonowania nukleosomów w całym genomie. Spośród tych dwóch technik, sekwencja ATAC zyskała na popularności w ciągu ostatniej dekady ze względu na prosty dwuetapowy protokół i niskie wymagania dotyczące liczby komórek (50 000 komórek w porównaniu do 1 miliona na replikę w przypadku sekwencji DNazy). Podczas gdy ATAC-seq zapewnia przegląd ogólnego krajobrazu chromatyny w populacji komórek, jest w dużej mierze niezależny od tego, które określone białka wiążą się z genomeme4,5. W celu zidentyfikowania miejsc, w których określone białko oddziałuje z genomem, złotym standardem techniki jest immunoprecypitacja chromatyny (ChIP). ChIP-seq polega na chemicznym utrwalaniu interakcji białko-DNA w komórce, a następnie immunoprecypitacji ("pull-down") przy użyciu przeciwciała specyficznego dla białka będącego przedmiotem zainteresowania w celu selekcji fragmentów DNA związanych przez białko będące przedmiotem zainteresowania (POI). Te fragmenty DNA można sekwencjonować w celu ujawnienia lokalizacji wiązania genomu określonych białek, takich jak TF, lub miejsc zawierających określone modyfikacje histonów1. Łącząc zestawy danych ATAC-seq i ChIP-seq, można uzyskać szczegółowy obraz krajobrazu regulacyjnego dla populacji komórek.

Podstawowy przepływ pracy wymagany do analizy jest następujący: surowe odczyty sekwencjonowania muszą być kontrolowane pod względem jakości przed dopasowaniem do genomu referencyjnego ("mapowanie"). Pomyślnie zmapowane odczyty mogą być następnie filtrowane w celu usunięcia zarówno odczytów niskiej jakości, jak i duplikatów PCR. Aby zobrazować te zmapowane i przefiltrowane odczyty, konieczne jest obliczenie "zasięgu" tych odczytów w całym genomie. Spowoduje to wygenerowanie pliku, który można przesłać do przeglądarki genomu, takiej jak multi-locus view (MLV) lub przeglądarka genomu UCSC jako "track"6,7. Identyfikacja szczytów lub "wywołanie szczytu" tych ścieżek pokrycia jest zwykle osiągane za pomocą narzędzi takich jak LanceOtron lub MACS28,9. Wreszcie, dzięki analizie lokalizacji pików, można dokonać porównań kształtu i wielkości między próbkami lub warunkami biologicznymi. Analiza i integracja tych zbiorów danych to złożony, wieloetapowy proces, w którym można wdrażać różne kombinacje narzędzi bioinformatycznych. Różne wersje narzędzi mogą być ze sobą niekompatybilne i mogą zmieniać dane wyjściowe przetwarzania danych. Istnieje również duża różnorodność mocy obliczeniowej i biegłości użytkownika wymaganej do implementacji różnych części przetwarzania danych, jak pokazano w potokach nf-core10, panpipes11, genpipes12, PEPATAC13 lub ChIP-AP14.

Ogólnie rzecz biorąc, doprowadziło to do niespójności zarówno w analizie, jak i w raportowaniu analizy, co z kolei doprowadziło do słabej odtwarzalności, dostępności i wygody dla każdego, kto ma ograniczoną wiedzę na temat bioinformatyki. Rozwiązujemy wszystkie te problemy za pomocą CATCH-UP (complete ATAC-seq and ChIP-seq upstream pipeline), łatwego w użyciu, elastycznego i modułowego potoku do przetwarzania danych ChIP-seq i ATAC/DNase-seq. Wdrożenie CATCH-UP wymaga minimalnego doświadczenia w dziedzinie bioinformatyki; Może być uruchamiany na różnych infrastrukturach obliczeniowych i umożliwia powtarzalną analizę danych w ramach grup badawczych i między nimi.

CATCH-UP to oparty na Pythonie potok Snakemake, zbudowany w celu standaryzacji analizy danych ChIP-seq i ATAC-seq. Pobiera surowe dane sekwencjonowania (pliki fastq.gz) jako dane wejściowe i generuje dane wyjściowe w postaci plików szczytowych (.bed) zapewniających odpowiedni wynik dla każdego kroku. Udostępniamy plik konfiguracyjny w formacie yaml (config.yaml), w którym użytkownik może edytować parametry każdego kroku analizy. System zarządzania zaimplementowany w snakemake umożliwia korzystanie z różnych infrastruktur obliczeniowych (takich jak serwery, klastry, systemy chmurowe czy komputery osobiste) oraz równolegle, jeśli użytkownik dostarczy dużą ilość danych.

Poniżej przedstawiamy szczegółowy opis każdego kroku przepływu pracy (zobacz Rysunek 1 dla ilustracji przepływu pracy). To wyjaśnienie jest niezbędne, aby postępować zgodnie z instrukcjami krok po kroku w sekcji protokołu:

Move fastq: pierwszym krokiem procesu jest skopiowanie surowych plików fastq do podanego katalogu analitycznego. Pozostawia to oryginalne dane nietknięte, aby uniknąć uszkodzenia lub modyfikacji plików surowych danych.

Konkatenacja: jeśli surowe dane sekwencjonowania zawierają wiele linii, ten krok jest wymagany do połączenia pasów przed analizą. Domyślnie potok obsługuje wszystkie pliki fastq jako pojedyncze próbki. Ten krok konkatenacji musi być zdefiniowany w pliku konfiguracyjnym.

Przycinanie: opcjonalny krok czyszczenia danych. Pozwala to na przycinanie odczytów o niskiej jakości lub sekwencji adapterów za pomocą trimmomatic15. Użytkownik może dostarczyć niestandardowe pliki fasta sekwencji adapterów; Przykład znajduje się w katalogu adaptera. Dodatkowe parametry przycinania można zdefiniować w pliku konfiguracyjnym. Domyślnie przepływ pracy pomija tę regułę.

Aligner: dla wyrównania, domyślnie stosowany jest Bowtie216; można również określić alternatywne narzędzia do wyrównywania, takie jak bwa-mem217. Narzędzie do wyrównywania Bowtie2 jest wybierane jako domyślne, ponieważ jest szczególnie biegłe w dopasowywaniu stosunkowo krótkich odczytów do stosunkowo dużych genomów i dlatego dobrze nadaje się do dopasowywania danych ChIP-seq i ATAC-seq do genomów ssaków. Aby uniknąć plików pośrednich, aligner jest przesyłany do widoku samtools, aby zapisać plik bam w danych wyjściowych. Dla tej reguły użytkownik musi określić preferowaną budowę genomu, na którym ma być mapowane odczyty, np. hg19/hg38 (człowiek), mm10/mm39 (mysz).

Filtrowanie: prawidłowo zmapowane odczyty są zachowywane, a odczyty o niskiej jakości są odfiltrowywane. Domyślnie: widok samtools, z parametrami: -bShuF 4 -f 3 -q 30.

Sortuj: wyrównane odczyty są sortowane w kolejności współrzędnych po lewej stronie. Domyślnie: sortowanie samtools (opakowanie snakemake), z parametrem: -m 4G.

Oznacz duplikaty: wszystkie zduplikowane odczyty są identyfikowane i oznaczane. Użytkownik może zdecydować się na ich usunięcie, zmieniając parametr pliku konfiguracyjnego. Domyślnie: Picard MarkDuplicates (opakowanie snakemake), z parametrem: --REMOVE_DUPLICATES False, aby oznaczyć i zachować duplikaty.

Scal bam: Jeśli dane sekwencjonowania składają się z replik lub próbek, użytkownik może chcieć połączyć w jeden bam. W takim przypadku użytkownik może zdecydować się na scalenie bamów lub pozostawienie oddzielnych plików bam przez cały czas trwania analizy. Jeśli użytkownik zdecyduje się na scalenie baz danych (przy użyciu polecenia samtools merge), należy określić wspólny prefiks dla scalonych baz danych.

Index: ten krok indeksuje posortowane współrzędne. Domyślnie: indeks samtools (opakowanie snakemake), przy użyciu domyślnych parametrów określonych przez samtools.

BamCoverage: ta reguła tworzy ścieżkę pokrycia grubej ryby z wyrównanych odczytów. Stosowane jest narzędzie bamCoverage z deepTools, a pokrycie jest obliczane jako liczba odczytów na pojemnik, w którym kosz reprezentuje okno o określonym rozmiarze. W tym potoku bamCoverage jest stosowany z następującymi parametrami ustawionymi jako domyślne: -bs 1 -normalizeUsing RPKM -extendReads.

Wywołanie szczytu: LanceOtron8 zostało wybrane jako domyślny peakcaller dla tego potoku. W przeciwieństwie do tradycyjnych metod szczytowych, które są w większości oparte na testach statystycznych, LanceOtron jest obiektem szczytowym opartym na głębokim uczeniu, który obejmuje pomiary wzbogacania genomu i testy statystyczne i wykazano, że przewyższa standardowy w branży obiekt wywołujący szczyt, MACS29. Aby grube ryby były kompatybilne z LanceOtronem, pokrycie musi być obliczone dla każdej pary zasad, a RPKM znormalizowane; Jest to odzwierciedlone w ustawieniach domyślnych kroku BamCoverage. MACS2 można wybrać jako alternatywny obiekt wywołujący szczyt. Uwolnienie nowych szczytowych rozmówców będzie monitorowane i uwzględniane w stosownych przypadkach w celu utrzymania i optymalizacji wydajności tego potoku analizy.

TrackDb: tworzy to powiązanie par klucz-wartość plików bigwig w celu ich załadowania i wizualizacji w narzędziach takich jak MLV6 lub UCSC Genome Browser18 platform.

Oprócz danych wyjściowych, każdy krok rurociągu generuje plik dziennika, a odpowiednie kontrole jakości są dostarczane, dzięki czemu użytkownik może śledzić postęp analizy. FastQC19 jest stosowany do surowych i przyciętych (jeśli wybrano) danych sekwencjonowania (kroki 1 - Przesuń fastq i 2- Przycinanie). Samtools stats plus MultiQC20 są używane do zbierania, tworzenia i wizualizacji raportów kontroli jakości plików bam w danych wyjściowych w krokach 3 - Aligner, 6 - Zaznacz duplikaty i 7 - Scal bam. Więcej informacji na temat każdego z narzędzi zastosowanych w powyższych krokach znajduje się w Tabeli 1.

Protokół

1. Uruchamianie potoku CATCH-UP

  1. Sklonuj repozytorium UpStreamPipeline z https://github.com/Genome-Function-Initiative-Oxford/UpStreamPipeline:
    Przejdź do wybranego katalogu roboczego, skopiuj następujący kod i uruchom w wierszu poleceń:
    git clone git@github.com:Inicjatywa-Funkcji-Genomu-Oxford/UpStreamPipeline.git
  2. Przejdź do folderu UpStreamPipeline pobranego za pomocą polecenia: cd UpStreamPipeline
  3. Zainstaluj dystrybucję anakondy (jeśli to konieczne):
    1. Sprawdź, czy anakonda jest już zainstalowana w systemie za pomocą polecenia, które conda. Jeśli polecenie nie pokazuje żadnej ścieżki do żadnej dystrybucji conda, pobierz mambaforge z https://github.com/conda-forge/miniforge#mambaforge i wybierz odpowiednią dystrybucję i wersję dla systemu. Na przykład w przypadku użytkowników Linuksa użyj wget https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-Linux-x86_64.sh. Odwiedź tę stronę internetową, aby zapoznać się z różnymi systemami operacyjnymi: https://github.com/conda-forge/miniforge/.
    2. Uruchom instalator za pomocą sh Mambaforge-Linux-x86_64.sh i zainicjuj conda w systemie, uruchamiając polecenie conda init.
  4. Zainstaluj i aktywuj nadrzędne środowisko conda (wymagania nadrzędnego środowiska conda są wymienione w tabeli 2):
    1. Zainstaluj środowisko za pomocą polecenia mamba env create - file=envs/upstream.yml.
    2. Aktywuj środowisko przy użyciu polecenia conda activate upstream.
  5. Po pomyślnym zainstalowaniu nadrzędnego środowiska conda aktywuj środowisko za pomocą polecenia conda activate upstream i przejdź do folderu CATCH-UP przy użyciu polecenia cd genetics/CATCH-UP.
  6. Edytuj plik konfiguracyjny, który znajduje się w folderze config za pomocą polecenia cd /config/analysis.yaml, i zmodyfikuj go zgodnie ze specyfikacją analizy za pomocą edytora tekstu. Postępuj zgodnie z instrukcjami wiersz po wierszu, aby edytować każdy parametr w samym pliku. Plik ten zostanie zachowany po analizie i będzie działał w celu udokumentowania parametrów przebiegu, aby ułatwić odtwarzalność.
  7. Otwórz i edytuj następujące trzy pliki w edytorze tekstu (np. TextEdit dla komputerów Mac lub Notatnik dla systemu Windows):
    1. Edytuj plik 1_fastqfile_home_dir.txt tak, aby zawierał listę wszystkich plików fastq do analizy.
      UWAGA: Numery odczytu i rozszerzenia (np. _R1/_R2 i .fastq.gz) muszą być wykluczone. Na przykład, jeśli projekt zawiera tę listę plików fastq:
      Sample1_conditionA_L001_R1 . fastq . gz
      Sample1_conditionA_L001_R2 . fastq . gz
      Sample1_conditionA_L002_R1 . fastq . gz
      Sample1_conditionA_L002_R2 . fastq . gz
      Sample1_conditionB_L001_R1 . fastq . gz
      Sample1_conditionB_L001_R2 . fastq . gz
      Sample1_conditionB_L002_R1 . fastq . gz
      Sample1_conditionB_L002_R2 . fastq . gz
      Sample2_conditionA_L001_R1 . fastq . gz
      Sample2_conditionA_L001_R2 . fastq . gz
      Sample2_conditionA_L002_R1 . fastq . gz
      Sample2_conditionA_L002_R2 . fastq . gz
      Sample2_conditionB_L001_R1 . fastq . gz
      Sample2_conditionB_L001_R2 . fastq . gz
      Sample2_conditionB_L002_R1 . fastq . gz
      Sample2_conditionB_L002_R2 . fastq . gz
      W tym przypadku 1_fastqfile_home_dir.txt jest następujący:
      Sample1_conditionA_L001
      Sample1_conditionA_L002
      Sample1_conditionB_L001
      Sample1_conditionB_L002
      Sample2_conditionA_L001
      Sample2_conditionA_L002
      Sample2_conditionB_L001
      Sample2_conditionB_L002
    2. Jeśli surowe dane zawierają tory sekwencjonowania, które wymagają konkatenacji, edytuj plik 2_fastq file_concat.txt, aby zdefiniować prefiks nazw plików, które mają zostać połączone. Jeśli nie ma żadnych linii sekwencjonowania do połączenia, nie edytuj 2_fastqfile_concat.txt. Upewnij się, że każdy wiersz 2_fastqfile_concat.txt zawiera jeden przykładowy prefiks w następujący sposób:
      Sample1_conditionA
      Sample1_conditionB
      Sample2_conditionA
      Sample2_conditionB
    3. Jeśli wymagane jest scalanie danych różnych próbek, edytuj 3_merge_bams.txt plik z prefiksem nazw plików, które mają zostać scalone. Upewnij się, że każdy wiersz zawiera jeden przykładowy prefiks w następujący sposób:
      Próbka1
      Próbka2
      Rysunek 2 pokazuje podsumowanie sposobu podsumowania tych trzech plików. Protokół może być stosowany do danych sekwencjonowania pojedynczego lub sparowanego końca. Potok domyślnie korzysta z analizy sparowanego końca, chyba że określono inaczej; Można to zmodyfikować w pliku konfiguracyjnym (patrz krok 1.6).
  8. Po edycji wszystkich wymaganych plików użyj snakemake, aby uruchomić CATCH-UP w następujący sposób: snakemake --configfile=config/analysis_name.yaml all --cores 4.
    UWAGA: Aby uzyskać bardziej szczegółowe instrukcje i dokumentację, zobacz folder CATCH-UP w repozytorium GitHub UpStreamPipeline, dostępny tutaj. Obejmuje to szczegółową dokumentację dotyczącą poprawnego modyfikowania pliku konfiguracyjnego, od zmiany ścieżek do sekwencjonowania plików danych i przechowywania wyników po edycję parametrów dla każdego kroku.

Wyniki

Potok CATCH-UP generuje wynik, log oraz plik kontroli jakości (QC) dla każdego etapu. W pliku konfiguracyjnym użytkownik może wybrać opcję zachowania lub usunięcia plików wynikowych, aby zmniejszyć zapotrzebowanie na pamięć dyskową. Wszystkie pliki wyjściowe są wyjaśnione w następujący sposób:

00. fastq_home_dir: plik konfiguracyjny, fastqfile_home_dir.txt oraz merge_bams.txt są kopiowane do tego folderu w celu odniesienia i zapewnienia powtarzalności.
01. reads: pliki fastq są kopiowane do tego folderu, aby uniknąć zmian w oryginalnych surowych danych podczas procesu workflow; ścieżki mogą być łączone, jeśli zostanie to określone.
02. trimming: pliki fastq z przyciętymi odczytami i adapterami, jeśli zostanie to określone.
03. aligner: dopasowanie do wybranego genomu.
04. filtering: filtrowanie w ramach kontroli jakości.
05. sorted: sortowanie plików bam.
06. duplicates: oznaczanie duplikatów.
07. merge: łączenie plików bam, jeśli zostało to określone w config.yaml.
08. bam_coverages: plik bigwig przedstawiający pokrycie.
09. peak_calling: plik bed będący wynikiem wyznaczania pików przez program LanceOtron.
10. track: generuje sformatowany plik tekstowy gotowy do użycia w Genome Browser, jeśli jest to wymagane.

Dla wyników 01, 02, 03, 06 i 07 udostępniono metryki kontroli jakości (QC) oraz pliki HTML. Ponadto na Rysunku 3 przedstawiamy przykład danych przetworzonych za pomocą CATCH-UP, wizualizując końcowy wynik za pośrednictwem platformy MLV.

Schemat potoku sekwencjonowania RNA; etapy FastQC, MultiQC, wyznaczania szczytów (peak calling) i oczyszczania danych.
Rysunek 1: Przepływ pracy CATCH-UP. Po otrzymaniu listy plików fastq, CATCH-UP przetwarza równolegle wszystkie próbki poprzez wszystkie etapy wstępne. Kliknij tutaj, aby wyświetlić powiększoną wersję tego rysunku.

Schemat konwencji nazywania plików FASTQ; zawiera etapy łączenia i konkatenacji plików.
Rycina 2: Ilustracyjne przedstawienie wyjaśniające, w jaki sposób pliki 1_fastqfile_home_dir.txt, 2_fastqfile_concat.txt oraz 3_merge_bams.txt muszą zostać poprawnie zmodyfikowane w celu uruchomienia CATCH-UP. Kliknij tutaj, aby wyświetlić powiększoną wersję tej ryciny.

Wykres analizy ekspresji genów, przedstawiający dane RNA-seq z wielokolorowymi pikiem histogramu, mapowanie sekwencji.
Rycina 3: Przykładowy wynik z potoku CATCH-UP. Surowe dane z sekwencjonowania (pliki fastq) zostały pobrane z ENCODE21. Potok CATCH-UP został wykorzystany do przetworzenia plików fastq dla DNase-seq i 5 typów ChIP-seq (H3K4me1, H3K4me3, H3K27ac, CTCF oraz POLR2A). Wyjściowe pliki bigwig zostały przesłane do Multi Locus View w celu wizualizacji i identyfikacji genomowych elementów regulacyjnych. Kliknij tutaj, aby wyświetlić powiększoną wersję tej ryciny.

Tabela 1: Zasoby dokumentacyjne. W tabeli przedstawiono narzędzia wykorzystywane w schemacie CATCH-UP, linki do ich dokumentacji oraz odpowiednie referencje. Kliknij tutaj, aby pobrać tę tabelę.

Tabela 2: Lista wymaganych kanałów i zależności dla środowiska conda upstream. Kliknij tutaj, aby pobrać tę tabelę.

Tabela 3: Systemy operacyjne użyte do przetestowania CATCH-UP. System Ubuntu został przetestowany na klastrze wysokiej wydajności oraz na lokalnej maszynie. Kliknij tutaj, aby pobrać tę tabelę.

Dyskusja

Zwiększonemu wykorzystaniu technik NGS do generowania danych genomicznych towarzyszy wzrost rozwoju narzędzi bioinformatycznych do analizy tych danych. Istnieje wiele narzędzi, które można zastosować na każdym etapie analizy danych, a także wiele różnych parametrów, które można określić w każdym narzędziu 6,8,9,15,16,17,18,19,20,22,23,24 . To sprawia, że istnieje bardzo zróżnicowana kombinacja strategii analizy, które można zastosować, a każda z nich może powodować różnice w wynikach. Aby umożliwić dokładne porównywanie eksperymentów, niezbędna jest standaryzacja analizy bioinformatycznej. Historycznie rzecz biorąc, dane NGS są generowane przez naukowców z mokrych laboratoriów, a dane są analizowane przez bioinformatyków.

Analizę danych NGS można podzielić na potoki "upstream" i "downstream", gdzie upstream obejmuje niezbędne kroki, aby przejść od surowych danych wyjściowych z maszyny sekwencjonującej do formatu, który jest wizualnie interpretowalny przez badacza. Dalsza analiza obejmuje dodatkowe kroki, które są dostosowane do pytania badawczego i projektu eksperymentu. Rurociągi wydobywcze są zatem uogólnione i podatne na standaryzację w celu poprawy odtwarzalności naukowej. Z drugiej strony, rurociągi niższego szczebla są wykonywane na zamówienie, zależne od kwestii biologicznej i wymagają wglądu badacza, co czyni je mniej odpowiednimi do standaryzacji. Stworzyliśmy przyjazny dla użytkownika potok wydobywczy, który umożliwia naukowcom pracującym w laboratoriach mokrych powtarzalną analizę własnych danych bez konieczności posiadania wcześniejszej wiedzy z zakresu bioinformatyki. W tym miejscu prezentujemy CATCH-UP, potok zbudowany przy użyciu frameworka snakemake i zaprojektowany tak, aby był zarówno przyjazny dla użytkownika, jak i zwalczał problem odtwarzalności w analizie danych ChIP-seq i ATAC-seq. Ten potok został utworzony do obsługi danych ChIP-seq lub ATAC-seq. Gdy użytkownik pobierze CATCH-UP, parametry analizy i nazewnictwo próbki muszą zostać najpierw zdefiniowane przed uruchomieniem potoku w wierszu polecenia przy użyciu jednego wiersza kodu. Proste instrukcje krok po kroku, jak dostosować parametry analizy dla analizy ChIP-seq lub ATAC-seq, znajdują się w samym pliku konfiguracyjnym oraz w naszym przewodniku krok po kroku w repozytorium GitHub CATCH-UP.

Istnieją potoki analizy dla danych ChIP-seq lub ATAC-seq, takie jak PEPATAC i ChIP-AP. Chociaż te potoki mają zalety, takie jak włączenie zarówno wstępnych, jak i późniejszych analiz w jednym przepływie pracy lub wykorzystanie graficznego interfejsu użytkownika (GUI), narzędzia te są przeznaczone dla bioinformatyków i naukowców o umiarkowanym poziomie wyszkolenia obliczeniowego13,14. Projekt CATCH-UP został opracowany w celu rozwiązania dwóch problemów: umożliwienia naukowcom pracującym w laboratoriach mokrych bez przeszkolenia bioinformatycznego przeprowadzenia własnych analiz oraz umożliwienia standaryzacji analiz wcześniejszych etapów poprzez ułatwienie raportowania i dokładnej odtwarzalności we wszystkich laboratoriach. CATCH-UP jest celowo ograniczony do analizy wcześniejszej, ale wyniki są kompatybilne z narzędziami do dalszej analizy, takimi jak te używane do statystycznego porównywania zestawów danych lub wnioskowania o powiązaniu czynnika transkrypcyjnego25,26.

Wszystkie krytyczne kroki niezbędne do przeprowadzenia powtarzalnej analizy upstream są wstępnie zdefiniowane w potoku CATCH-UP w celu zapewnienia niezawodności. Pełny charakter tego potoku umożliwia użytkownikowi śledzenie danych wyjściowych potoku krok po kroku, co jest przydatne zarówno w przypadku rozwiązywania problemów, jak i umożliwiania replikacji analitycznego przepływu pracy. Biorąc pod uwagę szybko rozwijający się charakter technik NGS, modułowy charakter tego potoku jest korzystny, ponieważ zapewnia możliwość łatwego dostosowania w celu uwzględnienia zarówno wydania aktualizacji wersji narzędzi, jak i wdrożenia nowych narzędzi. CATCH-UP został pomyślnie przetestowany dla następujących systemów operacyjnych: Ubuntu, CentOS, macOS (Intel CPU) i Windows (Tabela 3). Potok został zbudowany do obsługi dużych eksperymentów zawierających dziesiątki próbek poprzez zrównoleglenie przepływu pracy, dzięki czemu można go dostosować do różnych projektów eksperymentalnych. Ogólnie rzecz biorąc, wdrożenie CATCH-UP w analizie danych ChIP-seq i ATAC-seq umożliwia przyjazny dla użytkownika, powtarzalny i wysoce elastyczny przepływ pracy analizy.

Oświadczenia

J.R.H. jest współzałożycielem i dyrektorem Nucleome Therapeutics i świadczy usługi doradcze dla firmy.

Podziękowania

J.R.H. był wspierany przez granty z Wellcome Trust (225220/Z/22/Z i 106130/Z/14/Z) oraz MRC (MC_UU_00029/3). M.B. był wspierany przez grant Wellcome Trust (225220/Z/22/Z). E.R.G było wspierane przez Ministerstwo Edukacji Narodowej ds. Selekcji i Pośrednictwa Kandydatów Wysłanych za Granicę na Stypendium Kształcenia Podyplomowego (YLSY), Ministerstwo Edukacji Narodowej Republiki Turcji. Projekt E.G. był wspierany przez Wellcome Genomic Medicine and Statistics PhD Programme (108861/Z/15/Z). Projekt S.G.R. otrzymał wsparcie z grantu Rady ds. Badań Medycznych (MRC) (MC_UU_00029/3).

Materiały

Lista materiałów użytych w tym artykule
NazwaFirmaNumer katalogowyKomentarze
NADRÓB ZALEGŁOŚCIGitHubhttps://github.com/Genome-Function-Initiative-Oxford/UpStreamPipeline/tree/main/genetics/CATCH-UP
CentOS Linuxw wersji 7  Każdy z wymienionych tutaj systemów operacyjnych może być używany
macOS   AppleWersja 13 Ventura   Każdy z wymienionych tutaj systemów operacyjnych może być używany
Ubuntu   Ubuntu Wersja 22.04 LTS   Każdy z wymienionych tutaj systemów operacyjnych może być używany
Windows Wersja Microsoft11  Może być używany dowolny z wymienionych tutaj systemów operacyjnych

Bibliografia

  1. Downes, D. J., Hughes, J. R. Natural and experimental rewiring of gene regulatory regions. Annual Review of Genomics and Human Genetics. 23, 73-97 (2022).
  2. Buenrostro, J. D., Giresi, P. G., Zaba, L. C., Chang, H. Y., Greenleaf, W. J. Transposition of native chromatin for fast and sensitive epigenomic profiling of open chromatin, DNA-binding proteins and nucleosome position. Nature Methods. 10 (12), 1213-1218 (2013).
  3. Crawford, G. E., et al. Genome-wide mapping of DNase hypersensitive sites using massively parallel signature sequencing (MPSS). Genome Research. 16 (1), 123-131 (2006).
  4. Jin, W., et al. Genome-wide detection of DNase I hypersensitive sites in single cells and FFPE tissue samples. Nature. 528 (7580), 142-146 (2015).
  5. Agbleke, A. A., et al. Advances in chromatin and chromosome research: Perspectives from multiple fields. Molecular Cell. 79 (6), 881-901 (2020).
  6. Sergeant, M. J., et al. Multi locus view: an extensible web-based tool for the analysis of genomic data. Communications Biology. 4 (1), 623(2021).
  7. Kuhn, R. M., Haussler, D., Kent, W. J. The UCSC genome browser and associated tools. Briefings in Bioinformatics. 14 (2), 144-161 (2013).
  8. Hentges, L. D., et al. LanceOtron: a deep learning peak caller for genome sequencing experiments. Bioinformatics. 38 (18), 4255-4263 (2022).
  9. Gaspar, J. M. Improved peak-calling with MACS2. bioRxiv. , 496521(2018).
  10. Ewels, P. A., et al. The nf-core framework for community-curated bioinformatics pipelines. Nature Biotechnology. 38 (3), 276-278 (2020).
  11. Rich-Griffin, C., et al. Panpipes: a pipeline for multiomic single-cell data analysis. bioRxiv. , (2023).
  12. Bourgey, M., et al. GenPipes: an open-source framework for distributed and scalable genomic analyses. Gigascience. 8 (6), giz037(2019).
  13. Smith, J. P., et al. PEPATAC: an optimized pipeline for ATAC-seq data analysis with serial alignments. NAR Genomics and Bioinformatics. 3 (4), lqab101(2021).
  14. Suryatenggara, J., Yong, K. J., Tenen, D. E., Tenen, D. G., Bassal, M. A. ChIP-AP: an integrated analysis pipeline for unbiased ChIP-seq analysis. Briefings in Bioinform. 23 (1), bbab537(2022).
  15. Bolger, A. M., Lohse, M., Usadel, B. Trimmomatic: a flexible trimmer for Illumina sequence data. Bioinformatics. 30 (5), 2114-2120 (2014).
  16. Langmead, B., Salzberg, S. L. Fast gapped-read alignment with Bowtie 2. Nature Methods. 9 (4), 357-359 (2012).
  17. Vasimuddin, M., Misra, S., Li, H., Aluru, S. Efficient architecture-aware acceleration of BWA-MEM for multicore systems. 2019 IEEE International Parallel and Distributed Processing Symposium (IPDPS). , 314-324 (2019).
  18. Kent, W. J., et al. The human genome browser at UCSC. Genome Research. 12 (6), 996-1006 (2002).
  19. Andrews, S. FastQC: A quality control tool for high throughput sequence data. Babraham Bioinformatics. , https://www.bioinformatics.babraham.ac.uk/projects/fastqc/ (2010).
  20. Ewels, P., Magnusson, M., Lundin, S., Käller, M. MultiQC: summarize analysis results for multiple tools and samples in a single report. Bioinformatics. 32 (19), 3047-3048 (2016).
  21. Luo, Y., et al. New developments on the encyclopedia of DNA elements (ENCODE) data portal. Nucleic Acids Research. 48 (D1), D882-D889 (2020).
  22. Danecek, P., et al. Twelve years of SAMtools and BCFtools. Gigascience. 10 (2), giab008(2021).
  23. Picard Toolkit. , http://broadinstitute.github.io/picard/ (2019).
  24. Ramírez, F., et al. deepTools2: a next generation web server for deep-sequencing data analysis. Nucleic Acids Research. 44 (W1), W160-W165 (2016).
  25. Stark, R., Brown, G. DiffBind:Differential binding analysis of ChIP-Seq peak data. Bioconductor. , https://bioconductor.org/packages/release/bioc/vignettes/DiffBind/inst/doc/DiffBind.pdf (2016).
  26. Schep, A. N., et al. Structured nucleosome fingerprints enable high-resolution mapping of chromatin architecture within regulatory regions. Genome Research. 25 (11), 1757-1170 (2015).

Przedruki i uprawnienia

Tagi

Dane ATAC SeqBulk ChIP Seqdost pno chromatynyimmunoprecypitacja chromatynysekwencjonowanie nowej generacjipotok bioinformatycznypowtarzalno danychkontrola jako ci
Film wkrótce dostępny