Artykuł metodologiczny

Eksploracja heurystyczna hierarchicznych genotypów i dodatkowych loci genomu w populacjach bakteryjnych

DOI:

10.3791/63115

7 grudnia 2021

* These authors contributed equally

W tym artykule

Podsumowanie

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Ta analityczna platforma obliczeniowa dostarcza praktycznych wskazówek dla mikrobiologów, ekologów i epidemiologów zainteresowanych genomiką populacji bakteryjnej. W szczególności zaprezentowane tutaj prace pokazały, w jaki sposób można przeprowadzić: i) mapowanie hierarchicznych genotypów pod kierunkiem filogenezy; ii) analiza genotypów oparta na częstotliwości; iii) analizy pokrewieństwa i klonalności; iv) Identyfikacja loci akcesoryjnych różnicujących rodowód.

Streszczenie

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Rutynowe i systematyczne stosowanie sekwencjonowania całego genomu bakterii (WGS) zwiększa dokładność i rozdzielczość dochodzeń epidemiologicznych przeprowadzanych przez laboratoria Zdrowia Publicznego i agencje regulacyjne. Duże ilości publicznie dostępnych danych WGS mogą być wykorzystywane do badania populacji patogenów na dużą skalę. Niedawno opublikowano ogólnodostępną platformę obliczeniową o nazwie ProkEvo, która umożliwia powtarzalne, zautomatyzowane i skalowalne hierarchiczne analizy genomu populacji z wykorzystaniem bakteryjnych danych WGS. Wdrożenie projektu ProkEvo pokazało, jak ważne jest połączenie standardowego mapowania genotypowego populacji z eksploracją dodatkowej zawartości genomu na potrzeby wnioskowania ekologicznego. W szczególności w prezentowanych tu pracach wykorzystano wyniki pochodzące z ProkEvo do analiz hierarchicznych w skali populacji przy użyciu języka programowania R. Głównym celem było stworzenie praktycznego przewodnika dla mikrobiologów, ekologów i epidemiologów poprzez pokazanie, jak: i) korzystać z filogenezy mapowania hierarchicznych genotypów; ii) ocenia rozkłady częstości występowania genotypów jako wskaźnik zastępczy dla sprawności ekologicznej; (iii) określać pokrewieństwo i różnorodność genetyczną przy użyciu określonych klasyfikacji genotypowych; oraz iv) pochodzenie mapy różnicujące loci akcesoriów. Aby zwiększyć odtwarzalność i przenośność, użyto plików przecen języka R, aby zademonstrować całe podejście analityczne. Przykładowy zestaw danych zawierał dane genomowe z 2 365 izolatów odzwierzęcego patogenu przenoszonego przez żywność Salmonella Newport. Zakotwiczone w filogenezie mapowanie genotypów hierarchicznych (Serovar -> BAPS1 -> ST -> cgMLST) ujawniło strukturę genetyczną populacji, podkreślając typy sekwencji (ST) jako kluczowy genotyp różnicujący. W trzech najbardziej dominujących liniach, ST5 i ST118 miały wspólnego przodka nie tak dawno jak w przypadku wysoce klonalnego filotypu ST45. Różnice związane z ST zostały dodatkowo podkreślone przez rozmieszczenie loci dodatkowej oporności na środki przeciwdrobnoustrojowe (AMR). Na koniec wykorzystano wizualizację zakotwiczoną w filogenezie, aby połączyć hierarchiczne genotypy i zawartość AMR w celu ujawnienia struktury pokrewieństwa i sygnatur genomowych specyficznych dla linii. W połączeniu to podejście analityczne dostarcza pewnych wskazówek dotyczących przeprowadzania heurystycznych analiz genomowych populacji bakterii przy użyciu informacji pangenomicznych.

Wprowadzenie

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Coraz częstsze stosowanie sekwencjonowania całego genomu bakterii (WGS) jako podstawy rutynowego nadzoru i dochodzenia epidemiologicznego przez laboratoria zdrowia publicznego i agencje regulacyjne znacznie zwiększyło liczbę dochodzeń w sprawie epidemii patogenów1,2,3,4. W związku z tym duże ilości zanonimizowanych danych WGS są obecnie publicznie dostępne i mogą być wykorzystywane do badania aspektów biologii populacji gatunków chorobotwórczych na niespotykaną dotąd skalę, w tym badań opartych na: strukturach populacji, częstości genotypów i częstościach występowania genów/alleli w wielu zbiornikach, regionach geograficznych i typach środowisk5. Najczęściej stosowane badania epidemiologiczne prowadzone przez WGS opierają się na analizach wykorzystujących wyłącznie współdzieloną zawartość genomu podstawowego, przy czym sama współdzielona (konserwowana) zawartość jest wykorzystywana do klasyfikacji genotypowej (np. wywoływanie wariantów), a warianty te stają się podstawą do analizy epidemiologicznej i śledzenia1,2,6,7. Zazwyczaj genotypowanie oparte na genomie rdzenia bakteryjnego przeprowadza się za pomocą metod typowania sekwencji wielu locus (MLST) przy użyciu od siedmiu do kilku tysięcy loci8,9,10. Te strategie oparte na MLST obejmują mapowanie wstępnie zmontowanych lub zmontowanych sekwencji genomowych w wysoce wyselekcjonowanych bazach danych, łącząc w ten sposób informacje o alleli w powtarzalne jednostki genotypowe do analizy epidemiologicznej i ekologicznej11,12. Na przykład ta klasyfikacja oparta na MLST może generować informacje genotypowe na dwóch poziomach rozdzielczości: typy sekwencji niższego poziomu (STs) lub linie ST (7 loci) oraz warianty MLST genomu rdzeniowego wyższego poziomu (cgMLST) (~ 300-3,000 loci)10.

Klasyfikacja genotypowa oparta na MLST jest obliczeniowo przenośna i wysoce odtwarzalna między laboratoriami, co czyni ją powszechnie akceptowaną jako dokładne podejście do podtypowania poniżej poziomu gatunków bakterii13,14. Jednak populacje bakterii są zbudowane z różnymi stopniami klonalności specyficznymi dla gatunku (tj. jednorodnością genotypową), złożonymi wzorcami hierarchicznego pokrewieństwa między genotypami15,16,17 oraz szerokim zakresem zmienności w dystrybucji dodatkowej zawartości genomowej18,19. W związku z tym bardziej holistyczne podejście wykracza poza dyskretne klasyfikacje genotypów MLST i obejmuje hierarchiczne relacje genotypów w różnych skalach rozdzielczości, wraz z mapowaniem dodatkowej zawartości genomowej do klasyfikacji genotypowych, co ułatwia wnioskowanie populacyjne18,20,21. Co więcej, analizy mogą również koncentrować się na wspólnych wzorcach dziedziczenia dodatkowych loci genomowych wśród nawet daleko spokrewnionych genotypów21,22. Ogólnie rzecz biorąc, podejście łączone umożliwia niezależne badanie relacji między strukturą populacji a dystrybucją określonych kompozycji genomowych (np. loci) wśród gradientów geoprzestrzennych lub środowiskowych. Takie podejście może dostarczyć zarówno podstawowych, jak i praktycznych informacji na temat cech ekologicznych określonych populacji, które z kolei mogą wyjaśnić ich tropizm i wzorce dyspersji w zbiornikach, takich jak zwierzęta lub ludzie.

To oparte na systemach hierarchiczne podejście zorientowane na populację wymaga dużych ilości danych WGS, aby uzyskać wystarczającą moc statystyczną do przewidywania rozróżnialnych sygnatur genomowych. W związku z tym podejście to wymaga platformy obliczeniowej zdolnej do przetwarzania wielu tysięcy genomów bakteryjnych jednocześnie. Niedawno opracowano ProkEvo, który jest ogólnodostępną, zautomatyzowaną, przenośną i skalowalną platformą bioinformatyczną, która pozwala na integracyjne, hierarchiczne analizy populacji bakterii, w tym mapowanie pangenomiczne20. ProkEvo pozwala na badanie zbiorów danych bakteryjnych na średnią i dużą skalę, zapewniając jednocześnie ramy do generowania testowalnych i dających się wywnioskować hipotez epidemiologicznych i ekologicznych oraz prognoz fenotypowych, które mogą być dostosowywane przez użytkownika. Prace te uzupełniają ten potok, dostarczając przewodnika na temat wykorzystania plików wyjściowych pochodzących z ProkEvo jako danych wejściowych do analiz i interpretacji hierarchicznych klasyfikacji populacji i pomocniczego wydobycia genomowego. W przedstawionym tutaj studium przypadku wykorzystano populację Salmonella enterica linii I odzwierzęcego serowara S. Newport jako przykład i miał na celu dostarczenie praktycznych wskazówek dla mikrobiologów, ekologów i epidemiologów, jak: i) stosować zautomatyzowane podejście zależne od filogenezy do mapowania genotypów hierarchicznych; ii) ocenia rozkład częstości występowania genotypów jako wskaźnik zastępczy dla oceny sprawności ekologicznej; iii) określić stopnie klonalności specyficzne dla danej linii przy użyciu niezależnych podejść statystycznych; oraz iv) mapowanie różnicujących linię loci oporności na środki przeciwdrobnoustrojowe jako przykład sposobu wydobywania dodatkowej zawartości genomowej w kontekście struktury populacji. W szerszym ujęciu, to podejście analityczne zapewnia uogólnione ramy do przeprowadzenia populacyjnej analizy genomowej w skali, którą można wykorzystać do wnioskowania o wzorcach ewolucyjnych i ekologicznych niezależnie od gatunku docelowego.

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Protokół

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

1. Przygotuj pliki wejściowe

UWAGA: Protokół jest dostępny tutaj - https://github.com/jcgneto/jove_bacterial_population_genomics/tree/main/code. Protokół zakłada, że badacz specjalnie użył ProkEvo (lub porównywalnego potoku), aby uzyskać niezbędne dane wyjściowe dostępne w tym repozytorium Figshare (https://figshare.com/account/projects/116625/articles/15097503 - wymagane są dane logowania - Użytkownik musi utworzyć darmowe konto, aby mieć dostęp do plików!). Warto zauważyć, że ProkEvo automatycznie pobiera sekwencje genomowe z repozytorium NCBI-i wymaga jedynie pliku .txt zawierającego listę identyfikacji genomu jako pliku input20, oraz pliku używanego do tej pracy na S. Izolaty z Newport USA znajdują się tutaj (https://figshare.com/account/projects/116625/articles/15097503?file=29025729). Szczegółowe informacje na temat instalacji i korzystania z tej platformy genomiki bakteryjnej są dostępne tutaj (https://github.com/npavlovikj/ProkEvo/wiki/2.-Quick-start)20

  1. Wygeneruj filogenezę rdzenia genomu za pomocą FastTree23, jak opisano wcześniej20, który nie jest częścią platformy bioinformatycznej20. FastTree wymaga wyrównania rdzenia i genomu Roary24 jako pliku wejściowego. Plik filogenezy nosi nazwę newport_phylogeny.tree (https://figshare.com/account/projects/116625/articles/15097503?file=29025690).
  2. Wygeneruj wynik SISTR25 zawierający informacje dotyczące klasyfikacji serowarów dla danych wywołujących Salmonellę i wariant cgMLST (sistr_output.csv - https://figshare.com/account/projects/116625/articles/15097503?file=29025699).
  3. Wygeneruj plik BAPS przez fastbaps26,27 zawierający klasyfikację genomów BAPS na poziomach 1-6 w podgrupy lub haplotypy (fastbaps_partition_baps_prior_l6.csv - https://figshare.com/account/projects/116625/articles/15097503?file=29025684).
  4. Wygeneruj klasyfikację genomów na ST opartą na MLST za pomocą programu MLST (https://github.com/tseemann/mlst)28 (salmonellast_output.csv - https://figshare.com/account/projects/116625/articles/15097503?file=29025696).
  5. Wygeneruj dane wyjściowe ABRicate (https://github.com/tseemann/abricate)29 jako plik .csv zawierający loci AMR zmapowane na genom (sabricate_resfinder_output.csv - https://figshare.com/account/projects/116625/articles/15097503?file=29025693).
    UWAGA: Użytkownik może wyłączyć określone części potoku bioinformatycznego ProkEvo (więcej informacji tutaj - https://github.com/npavlovikj/ProkEvo/wiki/4.2.-Remove-existing-bioinformatics-tool-from-ProkEvo). Przedstawione tutaj podejście analityczne zawiera wytyczne dotyczące sposobu przeprowadzania analizy populacyjnej po uruchomieniu procesu bioinformatycznego.

2. Pobierz i zainstaluj oprogramowanie statystyczne oraz aplikację zintegrowanego środowiska programistycznego (IDE)

  1. Pobierz najnowszą, dostępną bezpłatnie wersję oprogramowania R dla systemu Linux, Mac lub PC30. Postępuj zgodnie z domyślnymi krokami instalacji.
  2. Pobierz najnowszą, dostępną bezpłatnie wersję środowiska IDE programu RStudio dla komputerów stacjonarnych tutaj31. Postępuj zgodnie z domyślnymi krokami instalacji.
    UWAGA: Kolejne kroki są zawarte w dostępnym skrypcie, w tym szczegółowe informacje na temat wykorzystania kodu, i powinny być uruchamiane sekwencyjnie w celu wygenerowania wyników i rysunków przedstawionych w tej pracy (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/data_analysis_R_code.Rmd). Użytkownik może zdecydować się na użycie innego języka programowania do przeprowadzenia tej analizy analitycznej/statystycznej, takiego jak Python. W takim przypadku użyj kroków w skryptach jako ramy do przeprowadzenia analizy.

3. Instalacja i aktywacja bibliotek nauki o danych

  1. Zainstaluj wszystkie biblioteki nauki o danych jednocześnie jako pierwszy krok analizy. Unikaj instalowania bibliotek za każdym razem, gdy skrypt musi zostać ponownie uruchomiony. Użyj funkcji install.packages() do instalacji biblioteki. Alternatywnie użytkownik może kliknąć kartę Pakiety w IDE i automatycznie zainstalować pakiety. Kod używany do instalacji wszystkich potrzebnych bibliotek jest prezentowany tutaj:
    # Zainstaluj Tidyverse
    install.packages("tidyverse")
    # Zainstaluj skimr

    install.packages("skimr")
    # Zainstaluj vegan
    install.packages("wegański")
    # Zainstaluj forcats
    install.packages("forcats")
    # Zainstaluj naniar
    install.packages("naniar")
    # Zainstaluj ggpubr
    install.packages("ggpubr")
    # Zainstaluj ggrepel
    install.packages("ggrepel")
    # Zainstaluj reshape2
    install.packages("reshape2")
    # Zainstaluj RColorBrewer
    install.packages("RColorBrewer")
    # Zainstaluj ggtree
    if (!requireNamespace("BiocManager", cicho = PRAWDA))
    install.packages("BiocManager")
    BiocManager::install("ggtree")
    # Instalacja ggtree wyświetli pytanie o instalację - odpowiedź brzmi "a", aby zainstalować/zaktualizować wszystkie zależności
  2. Aktywuj wszystkie biblioteki lub pakiety za pomocą funkcji library() na początku skryptu, zaraz po instalacji. Oto demonstracja, jak aktywować wszystkie niezbędne pakiety:
    # Aktywuj biblioteki i pakiety
    biblioteka(tidyverse)
    biblioteka(skimr)
    biblioteka (wegańskie)
    biblioteka(forcats)
    biblioteka(naniar)
    biblioteka(ggtree)
    biblioteka(ggpubr)
    biblioteka(ggrepel)
    biblioteka(reshape2)
    biblioteka(RColorBrewer)
  3. Pomiń wyprowadzanie kodu używanego do instalacji i aktywacji biblioteki i pakietu przy użyciu {r, include = FALSE} w uchwycie kodu w następujący sposób:
    ''' {r, include = FALSE}
    # Zainstaluj Tidyverse

    install.packages("tidyverse")
    '''

    UWAGA: Ten krok jest opcjonalny, ale pozwala uniknąć wyświetlania fragmentów niepotrzebnego kodu w końcowym raporcie w formacie html, doc lub pdf.
  4. Krótki opis poszczególnych funkcji wszystkich bibliotek wraz z przydatnymi linkami do zbierania dalszych informacji można znaleźć w krokach 3.4.1-3.4.11.
    1. Tidyverse — użyj tej kolekcji pakietów używanych do nauki o danych, w tym wprowadzania danych, wizualizacji, analizowania i agregacji oraz modelowania statystycznego. Zazwyczaj ggplot2 (wizualizacja danych) i dplyr (porządkowanie i modelowanie danych) są praktycznymi pakietami obecnymi w tej bibliotece32.
    2. skimr - Użyj tego pakietu do generowania statystyk sumarycznych ramek danych, w tym identyfikacji brakujących wartości33.
    3. Wegańskie - Użyj tego pakietu do analiz statystycznych ekologii społeczności, takich jak obliczanie statystyk opartych na różnorodności (np. różnorodność alfa i beta)34.
    4. forcats — ten pakiet służy do pracy ze zmiennymi kategorii, takimi jak zmiana kolejności klasyfikacji. Ten pakiet jest częścią biblioteki Tidyverse 32.
    5. Naniar - Ten pakiet służy do wizualizacji rozkładu brakujących wartości między zmiennymi w ramce danych, przy użyciu funkcji viss_miss()35.
    6. ggtree - Użyj tego pakietu do wizualizacji drzew filogenetycznych36.
    7. ggpubr - Użyj tego pakietu, aby poprawić jakość wizualizacji opartych na ggplot237.
    8. ggrepel - Użyj tego pakietu do etykietowania tekstu wewnątrz wykresów38.
    9. reshape2 - Użyj funkcji melt() z tego pakietu do transformacji ramek danych z szerokiego na długi format39.
    10. RColorBrewer - użyj tego pakietu do zarządzania kolorami w wizualizacjach opartych na ggplot240.
    11. Do eksploracyjnej analizy danych służą następujące podstawowe funkcje: head() do sprawdzania pierwszych obserwacji w ramce danych, tail() do sprawdzania ostatnich obserwacji ramki danych, is.na() do zliczania wierszy z brakującymi wartościami w ramce danych, dim() do sprawdzania liczby wierszy i kolumn w zbiorze danych, table() do zliczania obserwacji w zmiennej, i sum(), aby policzyć łączną liczbę obserwacji lub instancji.

4. Wprowadzanie i analiza danych

UWAGA: Szczegółowe informacje na temat każdego kroku tej analizy można znaleźć w dostępnym skrypcie (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/data_analysis_R_code.Rmd). Oto jednak kilka ważnych punktów, które należy wziąć pod uwagę:

  1. Wykonaj wszystkie dane genomowe, w tym wszystkie klasyfikacje genotypowe (serowar, BAPS, ST i cgMLST) za pomocą funkcji read_csv().
  2. Zmień nazwę, utwórz nowe zmienne i wybierz interesujące kolumny z każdego zestawu danych przed agregacją wielu zestawów danych.
  3. Nie usuwaj brakujących wartości z żadnego niezależnego zestawu danych. Poczekaj, aż wszystkie zestawy danych zostaną zagregowane, aby zmodyfikować lub wykluczyć brakujące wartości. Jeśli dla każdego zestawu danych zostaną utworzone nowe zmienne, brakujące wartości są domyślnie kategoryzowane w jednej z nowo wygenerowanych klasyfikacji.
  4. Sprawdź, czy nie ma błędnych znaków, takich jak łączniki lub znaki zapytania, i zastąp je NA (Nie dotyczy). Zrób to samo dla brakujących wartości.
  5. Agreguj dane w oparciu o hierarchiczną kolejność genotypów (serowar -> BAPS1 -> ST -> cgMLST) oraz grupowanie na podstawie identyfikacji poszczególnych genomów.
  6. Sprawdzaj brakujące wartości za pomocą wielu strategii i jawnie zajmij się takimi niespójnościami. Usuń genom lub wyizoluj z danych tylko wtedy, gdy klasyfikacja jest niewiarygodna. W przeciwnym razie należy wziąć pod uwagę wykonywaną analizę i usuwać agencje narodowe w poszczególnych przypadkach.
    UWAGA: Zdecydowanie zaleca się ustalenie strategii radzenia sobie z takimi wartościami a priori. Unikaj usuwania wszystkich genomów lub izolatów z brakującymi wartościami w dowolnych zmiennych. Na przykład genom może mieć klasyfikację ST bez numeru wariantu cgMLST. W takim przypadku genom może być nadal używany do analizy opartej na ST.
  7. Po zagregowaniu wszystkich zestawów danych przypisz je do nazwy ramki danych lub obiektu, który może być używany w wielu lokalizacjach w analizie uzupełniającej, aby uniknąć konieczności generowania tego samego pliku metadanych dla każdej figury w artykule.

5. Przeprowadzaj analizy i generuj wizualizacje

UWAGA: Szczegółowy opis każdego kroku potrzebnego do wykonania wszystkich analiz i wizualizacji można znaleźć w pliku markdown dla tego artykułu (https://github.com/jcgneto/jove_bacterial_population_genomics/tree/main/code). Kod dla każdej figury jest podzielony na fragmenty, a cały skrypt powinien być uruchamiany sekwencyjnie. Dodatkowo kod dla każdego rysunku głównego i dodatkowego jest dostarczany jako osobny plik (patrz Plik uzupełniający 1 i Plik uzupełniający 2). Oto kilka podstawowych punktów (z fragmentami kodu), które należy wziąć pod uwagę podczas generowania każdej figury głównej i uzupełniającej.

  1. Użyj ggtree, aby wykreślić drzewo filogenetyczne wraz z informacjami genotypowymi (Rysunek 1).
    1. Zoptymalizuj rozmiar figury ggtree, w tym średnicę i szerokość pierścieni, zmieniając wartości liczbowe wewnątrz funkcji xlim() i gheatmap(width = ) (patrz przykładowy kod poniżej).
      tree_plot <- ggtree(drzewo, układ = "okrągły") + xlim(-250, NA)
      figure_1 <- gheatmap(tree_plot, d4, offset=.0, width=20, colnames = FALSE)
      UWAGA: Aby uzyskać bardziej szczegółowe porównanie programów, które mogą być używane do tworzenia wykresów filogenetycznych, sprawdź to work20. Prace zwróciły uwagę na próbę zidentyfikowania strategii poprawy wizualizacji opartych na ggtree, takich jak zmniejszenie rozmiaru zestawu danych, ale długości gałęzi i topologia drzew nie były tak wyraźnie rozróżniające w porównaniu z phandango41.
    2. Zagreguj wszystkie metadane w jak najmniejszej liczbie kategorii, aby ułatwić wybór panelu kolorowania podczas wykreślania wielu warstw danych za pomocą drzewa filogenetycznego (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/figure_1.Rmd). Przeprowadź agregację danych w oparciu o pytanie o zainteresowania i wiedzę domenową.
  2. Użyj wykresu słupkowego, aby ocenić względne częstości (Rysunek 2).
    1. Agreguj dane zarówno dla linii ST, jak i wariantów cgMLST, aby ułatwić wizualizacje. Wybierz empiryczny lub statystyczny próg używany do agregacji danych, biorąc pod uwagę zadawane pytanie.
    2. Przykładowy kod, który można wykorzystać do sprawdzenia rozkładu częstotliwości linii ST w celu określenia punktu odcięcia, patrz poniżej:
      st_dist <- d2 %>% group_by(ST) %>% # grupuj według kolumny ST
      count() %>% # policz liczbę obserwacji
      arrange(desc(n)) ># ułóż liczenia w kolejności malejącej
    3. Przykładowy kod pokazujący, w jaki sposób można agregować drobne (niskiej częstotliwości) ST, znajduje się poniżej. Jak pokazano poniżej, ST, które nie są ponumerowane jako 5, 31, 45, 46, 118, 132 lub 350, są grupowane razem jako "Inne ST". Użyj podobnego kodu dla wariantów cgMLST (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/figure_2.Rmd).
      d2$st <- ifelse(d2$ST == 5, "ST5", # utwórz nową kolumnę ST, dla której mniejsze S T są agregowane jako Inne
      ifelse(d2$ST == 31, "ST31",
      ifelse(d2$ST == 45, "ST45",
      ifelse(d2$ST == 46, "ST46",
      ifelse(d2$ST == 118, "ST118",
      ifelse(d2$ST == 132, "ST132", ifelse(d2$ST == 350, "ST350", "Inne STs")))))))
  3. Użyj podejścia zagnieżdżonego, aby obliczyć proporcję każdej linii ST w każdej podgrupie BAPS1, aby zidentyfikować ST, które są spokrewnione z przodkami (należą do tej samej podgrupy BAPS1) (Rysunek 3). Poniższy kod ilustruje, w jaki sposób można obliczyć proporcję opartą na ST w podgrupach BAPS1 (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/figure_3.Rmd):
    baps <- d2b %>% filter(serovar == "Newport") %>% # filter Newport serovars
    select(baps_1, ST) %>% # wybierz kolumny baps_1 i ST
    mutate(ST = as.numeric(ST)) %>% ># zmień kolumnę ST na numeryczną
    drop_na(baps_1, ST) %>% ># spadek NAs
    group_by(baps_1, ST) %>% ># grupuj według baps_1 i ST
    summarise(n = n()) %>% ># liczba obserwacji
    mutate(prop = n/sum(n)*100) ># Oblicz proporcje
  4. Wykreśl rozkład loci AMR w liniach ST, korzystając z wyników adnotacji genów opartych na Resfinderze (Rysunek 4).
    UWAGA: Resfinder jest szeroko stosowany w badaniach ekologicznych i epidemiologicznych42. Adnotacja genów kodujących białka może się różnić w zależności od tego, jak często bazy danych są kuratorowane i aktualizowane. Korzystając z sugerowanego potoku bioinformatycznego, badacz może porównać klasyfikacje loci oparte na AMR w różnych bazach danych20. Pamiętaj, aby sprawdzić, które bazy danych są stale aktualizowane. Nie używaj nieaktualnych lub źle wyselekcjonowanych baz danych, aby uniknąć pomyłek.
    1. Użyj progu empirycznego lub statystycznego, aby odfiltrować najważniejsze loci AMR, aby ułatwić wizualizacje. Dostarcz plik surowej .csv zawierający obliczone proporcje wszystkich loci AMR we wszystkich liniach ST, takich jak pokazano tutaj (https://figshare.com/account/projects/116625/articles/15097503?file=29025687).
    2. Obliczyć proporcję AMR dla każdego ST, stosując następujący kod (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/figure_4.Rmd):
      # Obliczenia dla ST45
      d2c <- data6 %>% filter(st == "ST45") # najpierw filtruj dane ST45
      # dla ST45 oblicz proporcję loci AMR i utrzymuj tylko proporcję większą niż 10%

      D3C <- D2C %>% select(id, gen) %>% # select columns
      group_by(id, gen) %>% # grupa według id i genu
      summarize(count = n()) %>% ># count observations
      mutate(count = replace(count, count == 2, 1)) %>% ># zamień liczby równe 2 na 1, aby uwzględnić tylko jedną kopię każdego genu (duplikacje mogą nie być wiarygodne), ale badacz może zdecydować o ich wykluczeniu lub zachowaniu. Jeśli badacz chce je wykluczyć, użyj funkcji filter(count != 2) lub pozostaw tak, jak jest
      filter(liczba <= 1) # filtr liczy się poniżej lub równej 1
      D4C <- D3C %>% group_by(gen) %>% # Grupa według genu
      summarize(value = n()) %>% # count observations
      mutate(total = table(data1$st)[6]) %>% ># pobierz całkowitą liczbę st mutate(prop = (wartość/suma)*100) # Oblicz proporcje
      d5c <- d4c %>% mutate(st = "ST45") ># utwórz kolumnę st i dodaj informacje ST
    3. Po wykonaniu obliczeń dla wszystkich ST połącz zestawy danych jako jedną ramkę danych, używając następującego kodu:
      # Łączenie zestawów danych
      D6 <- rbind(D5a, D5b, D5c, D5d, D5e, D5f, D5G, D5h) # zestawy danych powiązań wierszy
    4. Aby wyeksportować plik .csv zawierający obliczone proporcje, należy użyć kodu:
      # Eksport tabeli danych zawierającej informacje o loci ST i AMR
      abx_newport_st <- d6 write.csv(abx_newport_st,"abx_newport_st.csv", row.names = FAŁSZ)
    5. Przed wykreśleniem rozkładu opartego na robotach AMR w liniach ST przefiltruj dane na podstawie progu, aby ułatwić wizualizacje, jak pokazano poniżej:
      # Filtruj loci AMR o proporcji większej lub równej 10%
      d7 <- d6 %>% filtr(prop >= 10) # określ próg empirycznie lub statystycznie
  5. Wykreśl filogenezę rdzenia genomu wraz z hierarchicznymi klasyfikacjami genotypowymi i danymi AMR na jednym wykresie za pomocą ggtree (Rysunek 5).
    1. Zoptymalizuj rozmiar figury wewnątrz ggtree, korzystając z wyżej wymienionych parametrów (patrz krok 5.1.1.).
    2. Optymalizuj wizualizacje, agregując zmienne lub używając klasyfikacji binarnej, takiej jak obecność lub brak genów. Im więcej obiektów jest dodawanych do wykresu, tym trudniejszy staje się proces wyboru kolorowania (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/figure_5.Rmd).
      UWAGA: Rysunki uzupełniające - szczegółowy opis całego kodu znajduje się tutaj (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/data_analysis_R_code.Rmd).
  6. Użyj wykresu punktowego w ggplot2, bez agregacji danych, aby wyświetlić rozkład linii ST lub wariantów cgMLST, jednocześnie podkreślając najczęstsze genotypy (rysunek uzupełniający 1) (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/supplementary_figure_s1.Rmd).
  7. Wykonaj analizę zagnieżdżoną, aby ocenić skład linii ST na podstawie proporcji wariantów cgMLST, aby uzyskać wgląd w różnorodność genetyczną opartą na ST, jednocześnie identyfikując najczęstsze warianty i ich pokrewieństwo genetyczne (tj. warianty cgMLST, które należą do tego samego ST, miały wspólnego przodka później niż te należące do różnych ST) (Rysunek uzupełniający 2) (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/supplementary_figure_s2.Rmd).
  8. Użyj metryki ekologii społeczności, a mianowicie indeksu różnorodności D Simpsona, aby zmierzyć stopień klonalności lub różnorodności genotypowej każdej z głównych linii ST 43 (Rysunek uzupełniający 3).
    1. Oblicz wskaźnik różnorodności w liniach ST na różnych poziomach rozdzielczości genotypowej, w tym na poziomie BAPS od 1 do 6 i cgMLST. Poniżej znajduje się przykładowy kod, jak wykonać to obliczenie na poziomie BAPS 1 (BAPS1) rozdzielczości genotypowej:
      # BAPS poziom 1 (BAPS1)
      # upuść ST i BAPS1 z NA, pogrupuj według ST i BAPS1, a następnie oblicz indeks Simpsona
      BAPS1 <- dane6 %>%
      select(st, BAPS1) %>% # select columns
      drop_na(st, BAPS1) %>% # drop NAs
      group_by(st, BAPS1) %>% # grupuj według kolumn
      summarise(n = n()) %>% # liczba obserwacji
      mutate(simpson = diversity(n, "simpson")) %>% # obliczyć różnorodność
      group_by(st) %>% # grupuj według kolumny
      summarise(Simpson = średnia(Simpson)) %>% # Oblicz średnią indeksu
      melt(id.vars=c("st"), measure.vars="simpson",
      variable.name="indeks", value.name="wartość") %>% # ukryte w długim formacie
      mutate(strat = "BAPS1") # utwórz kolumnę strat
      UWAGA: Bardziej zróżnicowana genetycznie populacja (tj. więcej wariantów na różnych poziomach rozdzielczości genotypowej) ma wyższy indeks na poziomie cgMLST i wytwarza rosnące wartości oparte na indeksie, przechodząc od poziomu BAPS 2 do 6 (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/supplementary_figure_s3.Rmd).
  9. Zbadaj stopień różnorodności genotypowej linii ST, wykreślając względną częstość podgrup BAPS na wszystkich poziomach rozdzielczości (BAPS1-6) (rysunek uzupełniający 4). Im bardziej zróżnicowana jest populacja, tym rzadsza staje się dystrybucja podgrup BAPS (haplotypów), przechodząc od BAPS1 (niższy poziom rozdzielczości) do BAPS6 (wyższy poziom rozdzielczości) (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/supplementary_figure_s4.Rmd).

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Wyniki

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Wykorzystując platformę obliczeniową ProkEvo do analiz genomiki populacyjnej, pierwszym krokiem w eksploracji danych bakteryjnych WGS jest zbadanie hierarchicznej struktury populacji w kontekście filogenezy genomu rdzeniowego (Rysunek 1). W przypadku S. enterica linia I, czego przykładem jest S. Zbiór danych Newport, populacja jest hierarchicznie ustrukturyzowana w następujący sposób: serowar (najniższy poziom rozdzielczości), podgrupy lub haplotypy BAPS1, linie ST i wariant...

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Dyskusja

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Wykorzystanie systemowej heurystycznej i hierarchicznej analizy struktury populacji zapewnia ramy do identyfikacji nowych sygnatur genomowych w zbiorach danych bakteryjnych, które mogą wyjaśnić unikalne wzorce ekologiczne i epidemiologiczne20. Dodatkowo, mapowanie dodatkowych danych genomu do struktury populacji można wykorzystać do wywnioskowania cech nabytych przez przodków i/lub niedawno wywodzących się, które ułatwiają rozprzestrzenianie się linii ST lub wariantów cgMLST w zbiornikach

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Oświadczenia

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Autorzy oświadczyli, że nie istnieją konkurencyjne interesy.

Podziękowania

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Ta praca była wspierana przez fundusze zapewnione przez UNL-IANR Agricultural Research Division i National Institute for Antimicrobial Resistance Research and Education oraz przez Nebraska Food Food for Health Center w Departamencie Nauki i Technologii Żywności (UNL). Badania te można było przeprowadzić tylko dzięki wykorzystaniu Holland Computing Center (HCC) w UNL, które otrzymuje wsparcie od Nebraska Research Initiative. Jesteśmy również wdzięczni za dostęp, za pośrednictwem HCC, do zasobów udostępnianych przez Open Science Grid (OSG), która jest wspierana przez National Science Foundation i Biuro Nauki Departamentu Energii Stanów Zjednoczonych. W pracy wykorzystano oprogramowanie do zarządzania przepływem pracy Pegasus, które jest finansowane przez National Science Foundation (grant #1664162).

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Materiały

Lista materiałów użytych w tym artykule
NazwaFirmaNumer katalogowyKomentarze
https://figshare.com/account/projects/116625/articles/14829225?file=28758762
amr_data_raw
https://figshare.com/account/projects/116625/articles/14829225?file=28547994 baps_outputhttps://figshare.com/account/projects/116625/articles/14829225?file=28548003
filogeneza genomu rdzeniowegohttps://figshare.com/account/projects/116625/articles/14829225?file=28548006
genome_https://figshare.com/account/projects/116625/articles/14829225?file=28639209
Linux, Mac lub PCdowolnej platformy o wysokiej wydajności
mlst_outputhttps://figshare.com/account/projects/116625/articles/14829225?file=28547997
https://figshare.com/account/projects/116625/articles/14829225?file=28548000
dane uwierzytelniające figshare są wymagane do zalogowania się i uzyskania dostępu do plików
amr_data_filtered sistr_output

Bibliografia

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,
  1. Grad, Y. H., et al. Genomic epidemiology of the Escherichia coli O104:H4 outbreaks in Europe, 2011. Proceedings of the National Academy of Sciences of the United States of America. 109 (8), 3065-3070 (2012).
  2. Worby, C. J., Chang, H. -H., Hanage, W. P., Lipsitch, M. The distribution of pairwise genetic distances: a tool for investigating disease transmission. Genetics. 198 (4), 1395-1404 (2014).
  3. Leekitcharoenphon, P., et al. Global genomic epidemiology of Salmonella enterica serovar Typhimurium DT104. Applied and Environmental Microbiology. 82 (8), 2516-2526 (2016).
  4. Alba, P., et al. Molecular epidemiology of Salmonella Infantis in Europe: insights into the success of the bacterial host and its parasitic pESI-like megaplasmid. Microbial Genomics. 6 (5), (2020).
  5. Zhou, Z., Alikhan, N. -F., Mohamed, K., Fan, Y. the Agama Study Group, Achtman, M. The EnteroBase user's guide, with case studies on Salmonella transmissions, Yersinia pestis phylogeny, and Escherichia core genomic diversity. Genome Research. 30 (1), 138-152 (2020).
  6. Azarian, T., et al. Global emergence and population dynamics of divergent serotype 3 CC180 pneumococci. PLOS Pathogens. 14 (11), 1007438(2018).
  7. Saltykova, A., et al. Comparison of SNP-based subtyping workflows for bacterial isolates using WGS data, applied to Salmonella enterica serotype Typhimurium and serotype 1,4,[5],12:i. PLOS ONE. 13 (2), 0192504(2018).
  8. Achtman, M., et al. Multi-locus sequence typing as a replacement for serotyping in Salmonella enterica. PLoS Pathogens. 8 (6), 1002776(2012).
  9. Maiden, M. C. J., et al. Multi-locus sequence typing: A portable approach to the identification of clones within populations of pathogenic microorganisms. Proceedings of the National Academy of Sciences of the United States of America. 95 (6), 3140-3145 (1998).
  10. Alikhan, N. -F., Zhou, Z., Sergeant, M. J., Achtman, M. A genomic overview of the population structure of Salmonella. PLOS Genetics. 14 (4), 1007261(2018).
  11. Gupta, A., Jordan, I. K., Rishishwar, L. stringMLST: a fast k-mer based tool for multi-locus sequence typing. Bioinformatics. 33 (1), 119-121 (2017).
  12. Jolley, K. A., Maiden, M. C. BIGSdb: Scalable analysis of bacterial genome variation at the population level. BMC Bioinformatics. 11 (1), 595(2010).
  13. Maiden, M. C. J., et al. MLST revisited: the gene-by-gene approach to bacterial genomics. Nature Reviews Microbiology. 11 (10), 728-736 (2013).
  14. Maiden, M. C. J. Multilocus sequence typing of bacteria. Annual Review of Microbiology. 60 (1), 561-588 (2006).
  15. Shapiro, B. J., Polz, M. F. Ordering microbial diversity into ecologically and genetically cohesive units. Trends in Microbiology. 22 (5), 235-247 (2014).
  16. Cordero, O. X., Polz, M. F. Explaining microbial genomic diversity in light of evolutionary ecology. Nature Reviews Microbiology. 12 (4), 263-273 (2014).
  17. Achtman, M., Wagner, M. Microbial diversity and the genetic nature of microbial species. Nature Reviews Microbiology. 6 (6), 431-440 (2008).
  18. Abudahab, K., et al. PANINI: Pangenome neighbour identification for bacterial populations. Microbial Genomics. 5 (4), (2019).
  19. Laing, C. R., Whiteside, M. D., Gannon, V. P. J. Pan-genome analyses of the species Salmonella enterica, and identification of genomic markers predictive for species, subspecies, and serovar. Frontiers in Microbiology. 8, 1345(2017).
  20. Pavlovikj, N., Gomes-Neto, J. C., Deogun, J. S., Benson, A. K. ProkEvo: an automated, reproducible, and scalable framework for high-throughput bacterial population genomics analyses. PeerJ. 9, 11376(2021).
  21. McNally, A., et al. Combined analysis of variation in core, accessory and regulatory genome regions provides a super-resolution view into the evolution of bacterial populations. PLOS Genetics. 12 (9), 1006280(2016).
  22. Langridge, G. C., et al. Patterns of genome evolution that have accompanied host adaptation in Salmonella. Proceedings of the National Academy of Sciences of the United States of America. 112 (3), 863-868 (2015).
  23. Price, M. N., Dehal, P. S., Arkin, A. P. FastTree 2 - Approximately maximum-likelihood trees for large alignments. PLoS ONE. 5 (3), 9490(2010).
  24. Page, A. J., et al. Roary: rapid large-scale prokaryote pan genome analysis. Bioinformatics. 31 (22), 3691-3693 (2015).
  25. Yoshida, C. E., et al. The Salmonella In silico typing resource (SISTR): An open web-accessible tool for rapidly typing and subtyping draft Salmonella genome assemblies. PLOS ONE. 11 (1), 0147101(2016).
  26. Cheng, L., Connor, T. R., Siren, J., Aanensen, D. M., Corander, J. Hierarchical and spatially explicit clustering of DNA sequences with BAPS software. Molecular Biology and Evolution. 30 (5), 1224-1228 (2013).
  27. Tonkin-Hill, G., Lees, J. A., Bentley, S. D., Frost, S. D. W., Corander, J. Fast hierarchical Bayesian analysis of population structure. Nucleic Acids Research. 47 (11), 5539-5549 (2019).
  28. Seemann, T. MLST. GitHub. , Available from: https://github.com/tseemann/mist (2020).
  29. Seemann, T. ABRicate. GitHub. , Available from: https://github.com/tseemann/abricate (2020).
  30. R Core Team. R: A language and environment for statistical computing. R Foundation for Statistical Computing. , Vienna, Austria. at. Available from: https://cran.r-project.org (2021).
  31. Studio Team. RStudio: Integrated Development for R. Studio, PBC. , Boston, MA. Available from: http://www.rstudio.com (2020).
  32. Wickham, H., et al. Welcome to the Tidyverse. Journal of Open Source Software. 4 (43), 1686(2019).
  33. rOpenSci: The skimr package. GitHub. , Berkeley, CA. Available from: https://github.com/ropensci/skimr/ (2021).
  34. Oksanen, J., et al. vegan: Community ecology package. R package version 2.5-5. , Available from: https://CRAN.R-project.org/package=vegan (2019).
  35. Tierney, N. J., Cook, D. H. Expanding tidy data principles to facilitate missing data exploration, visualization and assessment of imputations. arXiv. , Available from: http://arxiv.org/abs/1809.02264 (2020).
  36. Yu, G. Using ggtree to visualize data on tree-like structures. Current Protocols in Bioinformatics. 69 (1), (2020).
  37. Kassambara, A. ggpubr: "ggplot2" Based Publication Ready Plots. R package version 0.4.0. , Available from: https://CRAN.R-project.org/package=ggpubr (2020).
  38. Slowikowski, K. ggrepel: Automatically Position Non-Overlapping Text Labels with "ggplot2”. R package version 0.9.1. , Available from: https://CRAN.R-project.org/package=ggrepel (2021).
  39. Wickham, H. Reshaping Data with the reshape Package. Journal of Statistical Software. 21 (12), (2007).
  40. Neuwirth, E. RColorBrewer: ColorBrewer Palettes. R package version 1.1-2. , Available from: https://CRAN.R-project.org/package=RColorBrewer (2014).
  41. Hadfield, J., Croucher, N. J., Goater, R. J., Abudahab, K., Aanensen, D. M., Harris, S. R. Phandango: an interactive viewer for bacterial population genomics. Bioinformatics. 34 (2), 292-293 (2018).
  42. Perron, G. G., et al. Functional characterization of bacteria isolated from ancient arctic soil exposes diverse resistance mechanisms to modern antibiotics. PLOS ONE. 10 (3), 0069533(2015).
  43. Mitchell, P. K., et al. Population genomics of pneumococcal carriage in Massachusetts children following introduction of PCV-13. Microbial Genomics. 5 (2), (2019).
  44. Klemm, E. J., et al. Emergence of host-adapted Salmonella Enteritidis through rapid evolution in an immunocompromised host. Nature Microbiology. 1 (3), 15023(2016).
  45. Břinda, K., et al. Rapid inference of antibiotic resistance and susceptibility by genomic neighbour typing. Nature Microbiology. 5 (3), 455-464 (2020).
  46. MacFadden, D. R., et al. Using genetic distance from archived samples for the prediction of antibiotic resistance in Escherichia coli. Antimicrobial Agents and Chemotherapy. 64 (5), (2020).
  47. Mageiros, L., et al. Genome evolution and the emergence of pathogenicity in avian Escherichia coli. Nature Communications. 12 (1), 765(2021).
  48. Yahara, K., et al. Genome-wide association of functional traits linked with Campylobacter jejuni survival from farm to fork. Environmental Microbiology. 19 (1), 361-380 (2017).
  49. Walter, J., Maldonado-Gómez, M. X., Martínez, I. To engraft or not to engraft: an ecological framework for gut microbiome modulation with live microbes. Current Opinion in Biotechnology. 49, 129-139 (2018).
  50. Maldonado-Gómez, M. X., et al. Stable engraftment of Bifidobacterium longum AH1206 in the human gut depends on individualized features of the resident microbiome. Cell Host & Microbe. 20 (4), 515-526 (2016).
  51. Zhao, S., et al. Adaptive evolution within gut microbiomes of healthy people. Cell Host & Microbe. 25 (5), 656-667 (2019).
  52. Treangen, T. J., Ondov, B. D., Koren, S., Phillippy, A. M. The Harvest suite for rapid core-genome alignment and visualization of thousands of intraspecific microbial genomes. Genome Biology. 15 (11), 524(2014).
  53. Letunic, I., Bork, P. Interactive Tree Of Life (iTOL) v5: an online tool for phylogenetic tree display and annotation. Nucleic Acids Research. 49, 293-296 (2021).
  54. Croucher, N. J., et al. Rapid phylogenetic analysis of large samples of recombinant bacterial whole genome sequences using Gubbins. Nucleic Acids Research. 43 (3), 15(2015).
  55. Fenske, G. J., Thachil, A., McDonough, P. L., Glaser, A., Scaria, J. Geography shapes the population genomics of Salmonella enterica Dublin. Genome Biology and Evolution. 11 (8), 2220-2231 (2019).
  56. Lees, J. A., et al. Fast and flexible bacterial genomic epidemiology with PopPUNK. Genome Research. 29 (2), 304-316 (2019).
  57. Cohan, F. M. Towards a conceptual and operational union of bacterial systematics, ecology, and evolution. Philosophical Transactions of the Royal Society B: Biological Sciences. 361 (1475), 1985-1996 (2006).
  58. Cohan, F. M., Koeppel, A. F. The origins of ecological diversity in prokaryotes. Current Biology. 18 (21), 1024-1034 (2008).
  59. Cohan, F. M. Transmission in the origins of bacterial diversity, from ecotypes to phyla. Microbial Transmission. 5 (5), 311-343 (2019).
  60. Davis, J. J., et al. The PATRIC bioinformatics resource center: expanding data and analysis capabilities. Nucleic Acids Research. 48, 606-612 (2019).
  61. Feng, Y., Zou, S., Chen, H., Yu, Y., Ruan, Z. BacWGSTdb 2.0: a one-stop repository for bacterial whole-genome sequence typing and source tracking. Nucleic Acids Research. 49, 644-650 (2021).

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Przedruki i uprawnienia

Poproś o pozwolenie na ponowne wykorzystanie tekstu lub ilustracji tego artykułu JoVE

Poproś o pozwolenie

Tagi

Genomika populacyjna bakteriisekwencjonowanie ca ego genomuplatforma ProkEvoloci oporno ci na rodki przeciwdrobnoustrojowemapowanie kierowane filogenetycznielinie typ w sekwencjifilogenia rdzenia genomuklasyfikacja genotypowa

Powiązane artykuły