JoVE Logo

Oturum Aç

Bu içeriği görüntülemek için JoVE aboneliği gereklidir. Oturum açın veya ücretsiz deneme sürümünü başlatın.

Bu Makalede

  • Özet
  • Özet
  • Giriş
  • Protokol
  • Sonuçlar
  • Tartışmalar
  • Açıklamalar
  • Teşekkürler
  • Malzemeler
  • Referanslar
  • Yeniden Basımlar ve İzinler

Özet

Bu analitik hesaplama platformu, bakteriyel popülasyon genomiği ile ilgilenen mikrobiyologlar, ekolojistler ve epidemiyologlar için pratik rehberlik sağlar. Özellikle, burada sunulan çalışma nasıl gerçekleştirileceğini göstermiştir: i) hiyerarşik genotiplerin filogeni rehberliğinde haritalanması; ii) genotiplerin frekansa dayalı analizi; iii) akrabalık ve klonalite analizleri; iv) Soy farklılaştırıcı aksesuar lokuslarının tanımlanması.

Özet

Bakteriyel tüm genom dizilemesinin (WGS) rutin ve sistematik kullanımı, Halk Sağlığı laboratuvarları ve düzenleyici kurumlar tarafından yürütülen epidemiyolojik araştırmaların doğruluğunu ve çözünürlüğünü arttırmaktadır. Halka açık WGS verilerinin büyük hacimleri, patojenik popülasyonları büyük ölçekte incelemek için kullanılabilir. Son zamanlarda, bakteriyel WGS verilerini kullanarak tekrarlanabilir, otomatik ve ölçeklenebilir hiyerarşik tabanlı popülasyon genomik analizlerini mümkün kılmak için ProkEvo adlı ücretsiz olarak kullanılabilen bir hesaplama platformu yayınlandı. ProkEvo'nun bu uygulaması, popülasyonların standart genotipik haritalamasını ekolojik çıkarım için aksesuar genomik içerik madenciliği ile birleştirmenin önemini göstermiştir. Özellikle, burada vurgulanan çalışma, R programlama dilini kullanarak popülasyon ölçekli hiyerarşik analizler için ProkEvo'dan türetilmiş çıktıları kullandı. Temel amaç, mikrobiyologlar, ekolojistler ve epidemiyologlar için nasıl yapılacağını göstererek pratik bir rehber sağlamaktı: i) hiyerarşik genotiplerin filogeni rehberliğinde bir haritasını kullanmak; ii) genotiplerin frekans dağılımlarını ekolojik uygunluk için bir vekil olarak değerlendirmek; iii) belirli genotipik sınıflandırmaları kullanarak akrabalık ilişkilerini ve genetik çeşitliliği belirlemek; ve iv) aksesuar lokuslarını farklılaştıran harita soyu. Tekrarlanabilirliği ve taşınabilirliği artırmak için, tüm analitik yaklaşımı göstermek için R markdown dosyaları kullanılmıştır. Örnek veri kümesi, zoonotik gıda kaynaklı patojen Salmonella Newport'un 2.365 izolatından genomik veriler içeriyordu. Hiyerarşik genotiplerin (Serovar -> BAPS1 -> ST -> cgMLST) filogeni bağlantılı haritalanması, genotipi farklılaştıran kilit taşı olarak dizi tiplerini (ST'ler) vurgulayarak popülasyon genetik yapısını ortaya koymuştur. En baskın üç soy boyunca, ST5 ve ST118, yüksek klonal ST45 filotipinden daha yakın zamanda ortak bir atayı paylaştı. ST bazlı farklılıklar, aksesuar antimikrobiyal direnç (AMR) lokuslarının dağılımı ile daha da vurgulanmıştır. Son olarak, akrabalık yapısını ve soya özgü genomik imzaları ortaya çıkarmak için hiyerarşik genotipleri ve AMR içeriğini birleştirmek için filogeni bağlantılı bir görselleştirme kullanıldı. Kombine olarak, bu analitik yaklaşım, pan-genomik bilgileri kullanarak sezgisel bakteri popülasyonu genomik analizleri yapmak için bazı kılavuzlar sağlar.

Giriş

Halk Sağlığı laboratuvarları ve düzenleyici kurumlar tarafından rutin sürveyans ve epidemiyolojik araştırmalar için bir temel olarak bakteriyel tüm genom dizilemesinin (WGS) artan kullanımı, patojen salgın araştırmalarını önemli ölçüde artırmıştır 1,2,3,4. Sonuç olarak, büyük hacimli kimliksizleştirilmiş WGS verileri artık kamuya açıktır ve patojenik türlerin popülasyon biyolojisinin yönlerini benzeri görülmemiş bir ölçekte incelemek için kullanılabilir: popülasyon yapıları, genotip frekansları ve çoklu rezervuarlar, coğrafi bölgeler ve ortam türleri arasındaki gen / alel frekansları5 . En sık kullanılan WGS rehberliğindeki epidemiyolojik araştırmalar, yalnızca paylaşılan (korunmuş) içeriğin tek başına genotipik sınıflandırma (örneğin, varyant çağrısı) için kullanıldığı paylaşılan çekirdek-genomik içeriği kullanan analizlere dayanır ve bu varyantlar epidemiyolojik analiz ve izleme için temel oluşturur 1,2,6,7 . Tipik olarak, bakteriyel çekirdek-genom tabanlı genotipleme, yedi ila birkaç bin lokus 8,9,10 kullanılarak çok lokuslu dizi tipleme (MLST) yaklaşımlarıyla gerçekleştirilir. Bu MLST tabanlı stratejiler, önceden monte edilmiş veya bir araya getirilmiş genomik dizilerin yüksek küratörlü veritabanlarına haritalandırılmasını kapsar, böylece allelik bilgileri epidemiyolojik ve ekolojik analiz için tekrarlanabilir genotipik birimlerde birleştirir11,12. Örneğin, bu MLST tabanlı sınıflandırma iki çözünürlük düzeyinde genotipik bilgi üretebilir: düşük seviyeli dizi tipleri (ST'ler) veya ST soyları (7 lokus) ve daha üst düzey çekirdek-genom MLST (cgMLST) varyantları (~ 300-3.000 lokus)10.

MLST tabanlı genotipik sınıflandırma, hesaplamalı olarak taşınabilir ve laboratuvarlar arasında yüksek oranda tekrarlanabilir, bu da bakteri türü seviyesi 13,14'ün altında doğru bir alt tipleme yaklaşımı olarak yaygın olarak kabul edilmesini sağlar. Bununla birlikte, bakteri popülasyonları, türe özgü değişen klonalite dereceleri (yani, genotipik homojenlik), genotipler arasındaki hiyerarşik akrabalığın karmaşık kalıpları 15,16,17 ve aksesuar genomik içeriğinin dağılımındaki geniş bir varyasyon yelpazesi ile yapılandırılmıştır18,19 . Bu nedenle, daha bütünsel bir yaklaşım, MLST genotiplerine ayrık sınıflandırmaların ötesine geçer ve farklı çözünürlük ölçeklerinde genotiplerin hiyerarşik ilişkilerini, aksesuar genomik içeriğin genotipik sınıflandırmalara eşlenmesiyle birlikte dahil eder, bu da popülasyon tabanlı çıkarımı kolaylaştırır 18,20,21 . Dahası, analizler ayrıca uzaktan ilişkili genotipler21,22 arasında aksesuar genomik lokusların ortak kalıtım kalıplarına da odaklanabilir. Genel olarak, kombine yaklaşım, popülasyon yapısı arasındaki ilişkilerin agnostik sorgulanmasını ve belirli genomik bileşimlerin (örneğin, lokuslar) jeo-uzamsal veya çevresel gradyanlar arasında dağılımını sağlar. Böyle bir yaklaşım, belirli popülasyonların ekolojik özellikleri hakkında hem temel hem de pratik bilgiler verebilir ve bu da tropizmlerini ve gıda hayvanları veya insanlar gibi rezervuarlar arasındaki dağılım modellerini açıklayabilir.

Bu sistem tabanlı hiyerarşik popülasyon odaklı yaklaşım, ayırt edilebilir genomik imzaları tahmin etmek için yeterli istatistiksel güç için büyük miktarda WGS verisi gerektirir. Sonuç olarak, yaklaşım aynı anda binlerce bakteri genomunu işleyebilen bir hesaplama platformu gerektirir. Son zamanlarda, ProkEvo geliştirilmiştir ve pan-genomik haritalama20 dahil olmak üzere bütünleştirici hiyerarşik tabanlı bakteri popülasyonu analizlerine izin veren serbestçe kullanılabilir, otomatik, taşınabilir ve ölçeklenebilir bir biyoinformatik platformudur. ProkEvo, orta ila büyük ölçekli bakteri veri kümelerinin incelenmesine izin verirken, kullanıcı tarafından özelleştirilebilen test edilebilir ve çıkarılabilir epidemiyolojik ve ekolojik hipotezler ve fenotipik tahminler üretmek için bir çerçeve sağlar. Bu çalışma, ProkEvo'dan türetilmiş çıktı dosyalarının hiyerarşik popülasyon sınıflandırmalarının ve aksesuar genomik madenciliğinin analizi ve yorumlanması için girdi olarak nasıl kullanılacağına dair bir kılavuz sağlamada bu boru hattını tamamlamaktadır. Burada sunulan vaka çalışmasında Salmonella enterica soyu I zoonotik serovar S popülasyonu kullanılmıştır. Örnek olarak Newport ve özellikle mikrobiyologlar, ekolojistler ve epidemiyologlar için aşağıdaki konularda pratik kılavuzlar sağlamayı amaçlamıştır: i) hiyerarşik genotipleri haritalamak için otomatik filogeniye bağımlı bir yaklaşım kullanmak; ii) genotiplerin frekans dağılımını ekolojik uygunluğu değerlendirmek için bir vekil olarak değerlendirmek; iii) bağımsız istatistiksel yaklaşımlar kullanarak soya özgü klonalite derecelerini belirlemek; ve iv) popülasyon yapısı bağlamında aksesuar genomik içeriğinin nasıl çıkarılacağına dair bir örnek olarak soy farklılaştırıcı AMR lokuslarını haritalandırın. Daha geniş anlamda, bu analitik yaklaşım, hedeflenen türlerden bağımsız olarak evrimsel ve ekolojik kalıpları çıkarmak için kullanılabilecek bir ölçekte popülasyon tabanlı bir genomik analiz gerçekleştirmek için genelleştirilebilir bir çerçeve sağlar.

Protokol

1. Giriş dosyalarını hazırlama

NOT: Protokol burada mevcuttur - https://github.com/jcgneto/jove_bacterial_population_genomics/tree/main/code. Protokol, araştırmacının bu Figshare deposunda gerekli çıktıları elde etmek için özellikle ProkEvo'yu (veya karşılaştırılabilir bir boru hattını) kullandığını varsayar (https://figshare.com/account/projects/116625/articles/15097503 - giriş kimlik bilgileri gereklidir - Kullanıcı dosya erişimine sahip olmak için ücretsiz bir hesap oluşturmalıdır!). Not olarak, ProkEvo genomik dizileri NCBI-SRA deposundan otomatik olarak indirir ve yalnızca giriş20 olarak genom tanımlamalarının bir listesini içeren bir .txt dosyası ve S üzerindeki bu çalışma için kullanılanı gerektirir. Newport USA izolatları burada verilmiştir (https://figshare.com/account/projects/116625/articles/15097503?file=29025729).  Bu bakteri genomik platformunun nasıl kurulacağı ve kullanılacağı hakkında ayrıntılı bilgiye buradan ulaşabilirsiniz (https://github.com/npavlovikj/ProkEvo/wiki/2.-Quick-start)20

  1. Biyoinformatikplatform 20'nin bir parçası olmayan daha önce tarif edildiği gibi20 FastTree23'ü kullanarak çekirdek-genom filogenisi oluşturun. FastTree, giriş dosyası olarak Roary24 çekirdek-genom hizalamasını gerektirir. Filogeni dosyası newport_phylogeny.tree (https://figshare.com/account/projects/116625/articles/15097503?file=29025690) olarak adlandırılır.
  2. Salmonella ve cgMLST varyant çağrı verileri için serovar sınıflandırmaları ile ilgili bilgileri içeren SISTR25 çıktısı oluşturun (sistr_output.csv - https://figshare.com/account/projects/116625/articles/15097503?file=29025699).
  3. Genomların BAPS düzeyleri1-6 sınıflandırmasını alt gruplara veya haplotiplere (fastbaps_partition_baps_prior_l6.csv - https://figshare.com/account/projects/116625/articles/15097503?file=29025684) içeren fastbaps 26,27 ile BAPS dosyası oluşturun.
  4. MLST programını (https://github.com/tseemann/mlst)28 (salmonellast_output.csv - https://figshare.com/account/projects/116625/articles/15097503?file=29025696) kullanarak genomların ST'lere MLST tabanlı sınıflandırmasını oluşturun.
  5. ABRicate (https://github.com/tseemann/abricate)29 çıktısını, genom başına eşlenen AMR lokuslarını içeren bir .csv dosyası olarak oluşturun (sabricate_resfinder_output.csv - https://figshare.com/account/projects/116625/articles/15097503?file=29025693).
    NOT: Kullanıcı ProkEvo biyoinformatik boru hattının belirli parçalarını kapatabilir (daha fazla bilgi için burayı kontrol edin - https://github.com/npavlovikj/ProkEvo/wiki/4.2.-Remove-existing-bioinformatics-tool-from-ProkEvo). Burada sunulan analitik yaklaşım, biyoinformatik boru hattı çalıştırıldıktan sonra popülasyon tabanlı bir analizin nasıl yapılacağına dair kılavuzlar sağlar.

2. İstatistiksel yazılım ve entegre geliştirme ortamı (IDE) uygulamasını indirin ve yükleyin

  1. Linux, Mac veya PC30 için R yazılımının ücretsiz olarak kullanılabilen en güncel sürümünü indirin. Varsayılan yükleme adımlarını izleyin.
  2. RStudio masaüstü IDE'nin ücretsiz olarak kullanılabilen en güncel sürümünü buradan indirin31. Yükleme için varsayılan adımları izleyin.
    NOT: Sonraki adımlar, kod kullanımının ayrıntılı bilgileri de dahil olmak üzere kullanılabilir komut dosyasına dahil edilmiştir ve bu çalışmada (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/data_analysis_R_code.Rmd) sunulan çıktıları ve şekilleri oluşturmak için sırayla çalıştırılmalıdır. Kullanıcı bu analitik/istatistiksel analizi yapmak için Python gibi başka bir programlama dili kullanmaya karar verebilir. Bu durumda, analizi gerçekleştirmek için komut dosyalarındaki adımları bir çerçeve olarak kullanın.

3. Veri bilimi kitaplıklarını yükleme ve etkinleştirme

  1. Analizin ilk adımı olarak tüm veri bilimi kitaplıklarını bir kerede yükleyin. Komut dosyasının her yeniden çalıştırılması gerektiğinde kitaplıkları yüklemekten kaçının. Kitaplık yüklemesi için install.packages() işlevini kullanın. Alternatif olarak, kullanıcı IDE'nin içindeki Paketler sekmesine tıklayıp paketleri otomatik olarak yükleyebilir. Gerekli tüm kitaplıkları yüklemek için kullanılan kod burada sunulmuştur:
    # Tidyverse yükleyin
    install.packages("tidyverse")
    # Skimr yükle

    install.packages("skimr")
    # Vegan yükleyin
    install.packages("vegan")
    # Forcats'i yükle
    install.packages("forcats")
    # Naniar yükle
    install.packages("naniar")
    # ggpubr yükle
    install.packages("ggpubr")
    # ggrepel yükle
    install.packages("ggrepel")
    # Reshape2'yi yükleyin
    install.packages("reshape2")
    # RColorBrewer'ı yükleyin
    install.packages("RColorBrewer")
    # ggtree'yi yükle
    if (!requireNamespace("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
    BiocManager::install("ggtree")
    # ggtree'nin kurulumu, yükleme hakkında bir soru soracaktır - cevap tüm bağımlılıkları yüklemek / güncellemek için "a" dır.
  2. Yüklemeden hemen sonra, komut dosyasının başındaki library() işlevini kullanarak tüm kitaplıkları veya paketleri etkinleştirin. İşte gerekli tüm paketlerin nasıl etkinleştirileceğine dair bir gösterim:
    # Kütüphaneleri ve paketleri etkinleştirin
    kütüphane (tidyverse)
    kütüphane (skimr)
    kütüphane (vegan)
    kütüphane (forcats)
    kütüphane(naniar)
    kütüphane(ggtree)
    kütüphane(ggpubr)
    kütüphane (ggrepel)
    kütüphane(reshape2)
    kütüphane (RColorBrewer)
  3. Kitaplık ve paket yükleme ve etkinleştirme için kullanılan kodun çıktısını, kod kıkırdamasında {r, include = FALSE} kullanarak aşağıdaki gibi bastırın:
    ''' {r, include = FALSE}
    # Tidyverse yükleyin

    install.packages("tidyverse")
    ```

    NOT: Bu adım isteğe bağlıdır, ancak son html, doc veya pdf raporunda gereksiz kod parçalarının gösterilmesini önler.
  4. Tüm kütüphanelerin belirli işlevlerinin kısa bir açıklaması ve daha fazla bilgi toplamak için bazı yararlı bağlantılar için, 3.4.1-3.4.11 numaralı adımlara bakın.
    1. Tidyverse - veri girişi, görselleştirme, ayrıştırma ve toplama ve istatistiksel modelleme dahil olmak üzere veri bilimi için kullanılan bu paket koleksiyonunu kullanın. Tipik olarak, ggplot2 (veri görselleştirme) ve dplyr (veri düzenleme ve modelleme) bu kitaplık32'de bulunan pratik paketlerdir.
    2. skimr - eksik değerlerin tanımlanması da dahil olmak üzere veri çerçevelerinin özet istatistiklerini oluşturmak için bu paketi kullanın33.
    3. vegan - Bu paketi, çeşitliliğe dayalı istatistiklerin hesaplanması gibi topluluk ekolojisi istatistiksel analizleri için kullanın (örneğin, alfa ve beta-çeşitlilik)34.
    4. forcats - sınıflandırmaları yeniden sıralama gibi kategorik değişkenlerle çalışmak için bu paketi kullanın. Bu paket Tidyverse kütüphanesi32'nin bir parçasıdır.
    5. naniar - viss_miss() işlevi35'i kullanarak eksik değerlerin bir veri çerçevesindeki değişkenler arasındaki dağılımını görselleştirmek için bu paketi kullanın.
    6. ggtree - filogenetik ağaçların görselleştirilmesi için bu paketi kullanın36.
    7. ggpubr - ggplot2 tabanlı görselleştirmelerin kalitesini artırmak için bu paketi kullanın37.
    8. ggrepel - grafik38'in içindeki metin etiketlemesi için bu paketi kullanın.
    9. reshape2 - veri çerçevelerinin genişten uzun format39'a dönüştürülmesi için bu paketteki melt() işlevini kullanın.
    10. RColorBrewer - ggplot2 tabanlı görselleştirmelerde renkleri yönetmek için bu paketi kullanın40.
    11. Keşifsel veri analizi için aşağıdaki temel işlevleri kullanın: bir veri çerçevesindeki ilk gözlemleri kontrol etmek için head(), bir veri çerçevesinin son gözlemlerini kontrol etmek için tail(), is.na() bir veri çerçevesi boyunca eksik değerlere sahip satırların sayısını saymak, bir veri kümesindeki satır ve sütun sayısını denetlemek için dim(), bir değişkendeki gözlemleri saymak için table(), ve sum() gözlem veya örneklerin toplam sayısını saymak için.

4. Veri girişi ve analizi

NOT: Bu çözümlemenin her adımıyla ilgili ayrıntılı bilgi mevcut komut dosyasında (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/data_analysis_R_code.Rmd) bulunabilir. Ancak, dikkat edilmesi gereken bazı önemli noktalar şunlardır:

  1. read_csv() fonksiyonunu kullanarak tüm genotipik sınıflandırmalar (serovar, BAPS, ST ve cgMLST) dahil olmak üzere tüm genomik veri girişini yapın.
  2. Yeniden adlandırın, yeni değişkenler oluşturun ve çoklu veri kümesi toplamadan önce her veri kümesinden ilgilenilen sütunları seçin.
  3. Herhangi bir bağımsız veri kümesinden eksik değerleri kaldırmayın. Eksik değerleri değiştirmek veya hariç tutmak için tüm veri kümeleri toplanana kadar bekleyin. Her veri kümesi için yeni değişkenler oluşturulursa, eksik değerler varsayılan olarak yeni oluşturulan sınıflandırmalardan birinde kategorize edilir.
  4. Kısa çizgiler veya sorgulama işaretleri gibi hatalı karakterler olup olmadığını kontrol edin ve bunları NA (Uygulanamaz) ile değiştirin. Eksik değerler için de aynısını yapın.
  5. Genotiplerin hiyerarşik sırasına (serovar -> BAPS1 -> ST -> cgMLST) dayanan verileri toplayın ve bireysel genom tanımlamalarına göre gruplandırın.
  6. Birden fazla strateji kullanarak eksik değerleri kontrol edin ve bu tür tutarsızlıklarla açıkça ilgilenin. Sadece sınıflandırma güvenilmez ise bir genomu kaldırın veya verilerden izole edin. Aksi takdirde, yapılan analizi göz önünde bulundurun ve NA'ları duruma göre kaldırın.
    NOT: Bu tür değerlerle a priori olarak başa çıkmak için bir strateji oluşturulması şiddetle tavsiye edilir. Herhangi bir değişkende eksik değerlere sahip tüm genomları veya izolatları çıkarmaktan kaçının. Örneğin, bir genom cgMLST varyant numarasına sahip olmadan ST sınıflandırmasına sahip olabilir. Bu durumda, genom ST tabanlı analiz için hala kullanılabilir.
  7. Tüm veri kümeleri toplandıktan sonra, kağıttaki her şekil için aynı meta veri dosyasını oluşturmak zorunda kalmamak için bunları izleme analizinde birden çok konumda kullanılabilecek bir veri çerçevesi adına veya nesnesine atayın.

5. Analizler yapın ve görselleştirmeler oluşturun

NOT: Tüm analiz ve görselleştirmeleri üretmek için gereken her adımın ayrıntılı bir açıklaması bu makalenin markdown dosyasında bulunabilir (https://github.com/jcgneto/jove_bacterial_population_genomics/tree/main/code). Her şekil için kod parçalar halinde ayrılır ve tüm komut dosyası sırayla çalıştırılmalıdır. Ek olarak, her ana ve tamamlayıcı şekil için kod ayrı bir dosya olarak sağlanır (bkz. Ek Dosya 1 ve Ek Dosya 2). İşte her bir ana ve ek rakamı oluştururken göz önünde bulundurulması gereken bazı önemli noktalar (kod parçacıklarıyla).

  1. Genotipik bilgilerle birlikte filogenetik bir ağacı çizmek için ggtree kullanın (Şekil 1).
    1. Sırasıyla xlim() ve gheatmap(width = ) işlevlerinin içindeki sayısal değerleri değiştirerek halkaların çapı ve genişliği de dahil olmak üzere ggtree şekil boyutunu optimize edin (aşağıdaki örnek koda bakın).
      tree_plot <- ggtree(ağaç, düzen = "dairesel") + xlim(-250, NA)
      figure_1 <- gheatmap(tree_plot, d4, offset=.0, width=20, colnames = FALSE)
      NOT: Filogenetik çizim için kullanılabilecek programların daha ayrıntılı bir karşılaştırması için, bu çalışma20'yi kontrol edin. Çalışma, veri kümesi boyutunu küçültme gibi ggtree tabanlı görselleştirmeleri geliştirmek için stratejiler belirleme girişimini vurguladı, ancak dal uzunlukları ve ağaç topolojisi, phandango41'e kıyasla açıkça ayırt edici değildi.
    2. Filogenetik ağaçla birden fazla veri katmanı çizerken renklendirme paneli seçimini kolaylaştırmak için tüm meta verileri mümkün olduğunca az kategoride toplayın (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/figure_1.Rmd). İlgi alanı ve alan bilgisi sorusuna dayalı veri toplamayı gerçekleştirin.
  2. Göreli frekansları değerlendirmek için bir çubuk grafiği kullanın (Şekil 2).
    1. Görselleştirmeleri kolaylaştırmak için hem ST soyları hem de cgMLST değişkenleri için verileri toplayın. Sorulan soruyu göz önünde bulundurarak veri toplama için kullanılan ampirik veya istatistiksel bir eşik seçin.
    2. Kesmeyi belirlemek için ST soylarının frekans dağılımını incelemek için kullanılabilecek bir örnek kod için aşağıya bakın:
      st_dist <- d2 %>% group_by(ST) %>% # grubunu ST sütununa göre gruplandırın
      count() %>% # gözlem sayısını sayın
      rerange(desc(n)) # sayımları azalan sırada düzenleyin
    3. Küçük (düşük frekanslı) ST'lerin nasıl toplanabileceğini gösteren bir kod örneği için aşağıya bakın. Aşağıda gösterildiği gibi, 5, 31, 45, 46, 118, 132 veya 350 olarak numaralandırılmayan ST'ler "Diğer ST'ler" olarak gruplandırılmıştır. cgMLST varyantları (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/figure_2.Rmd) için benzer bir kod kullanın.
      d2$st <- ifelse(d2$ST == 5, "ST5", # küçük S T'lerin Diğerleri olarak toplandığı yeni bir ST sütunu oluşturun
      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", "Diğer ST'ler"))))))))
  3. Atasal olarak ilişkili (aynı BAPS1 alt grubuna ait) ST'leri tanımlamak üzere her BAPS1 alt grubundaki her ST soyunun oranını hesaplamak için iç içe geçmiş bir yaklaşım kullanın (Şekil 3). Aşağıdaki kod, ST tabanlı oranın BAPS1 alt grupları arasında nasıl hesaplanabileceğini örneklemektedir (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/figure_3.Rmd):
    baps <- d2b %>% filtre(serovar == "Newport") %>% # filtre Newport serovarları
    select(baps_1, ST) %>% # baps_1 ve ST sütunlarını seçin
    mutate(ST = as.numeric(ST)) %>% # ST sütununu sayısal olarak değiştirin
    drop_na(baps_1, ST) %>% # bırakma NA'lar
    group_by ve ST'ye göre baps_1(>, ST) % baps_1% # grubu
    summarise(n = n()) %>% # sayım gözlemleri
    mutate(prop = n/sum(n)*100) # oranları hesapla
  4. Resfinder tabanlı gen ek açıklamasını kullanarak AMR lokuslarının ST soyları arasındaki dağılımını çizin (Şekil 4).
    NOT: Resfinder ekolojik ve epidemiyolojik çalışmalarda yaygın olarak kullanılmaktadır42. Protein kodlayan genlerin ek açıklaması, veritabanlarının ne sıklıkta küratörlüğünü ve güncellendiğini kontrol ettiğine bağlı olarak değişebilir. Önerilen biyoinformatik boru hattını kullanıyorsa, araştırmacı farklı veritabanlarındaki AMR tabanlı lokus sınıflandırmalarını karşılaştırabilir20. Hangi veritabanlarının sürekli güncellendiğini kontrol ettiğinizden emin olun. Yanlış çağrıları önlemek için güncel olmayan veya kötü seçilmiş veritabanlarını kullanmayın.
    1. Görselleştirmeleri kolaylaştırmak amacıyla en önemli AMR lokuslarını filtrelemek için ampirik veya istatistiksel bir eşik kullanın. Burada gösterildiği gibi tüm ST soylarındaki tüm AMR lokuslarının hesaplanan oranlarını içeren ham bir .csv dosyası sağlayın (https://figshare.com/account/projects/116625/articles/15097503?file=29025687).
    2. Aşağıdaki kodu kullanarak her ST için AMR oranını hesaplayın (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/figure_4.Rmd):
      # ST45 için hesaplamalar
      d2c <- veri%6 %> filtre(st == "ST45") # önce ST45 verilerini filtreleyin
      # ST45 için, AMR lokuslarının oranını hesaplayın ve oranı sadece% 10'dan büyük tutun

      d3c <- d2c %>% select(id, gene) %>% # select columns
      group_by(id, gen) %>% # id ve gene göre grup
      summarize(count = n()) %>% # sayım gözlemleri
      mutate(count = replace(count, count == 2, 1)) %>% # Her genin yalnızca bir kopyasını dikkate almak için 2'ye eşit sayımları 1 ile değiştirin (çoğaltmalar güvenilir olmayabilir), ancak araştırmacı bunları hariç tutmaya veya tutmaya karar verebilir. Araştırmacı bunları hariç tutmak istiyorsa, filter(count != 2) işlevini kullanın veya olduğu gibi bırakın
      filter(count <= 1) # filtre 1'in altında veya 1'e eşit sayılır
      d4c <- d3c %>% group_by(gen) %>% # genlere göre grup
      summarize(value = n()) %>% # sayım gözlemleri
      mutate(total = table(data1$st)[6]) %>% # st mutate(prop = (değer/toplam)*100) toplam sayılarını alın # oranları hesaplayın
      d5c <- d4c %>% mutasyon(st = "ST45") # bir st sütunu oluşturun ve ST bilgileri ekleyin
    3. Tüm ST'ler için hesaplamalar yapıldıktan sonra, aşağıdaki kodu kullanarak veri kümelerini tek bir veri çerçevesi olarak birleştirin:
      # Veri kümelerini birleştirme
      d6 <- rbind(d5a, d5b, d5c, d5d, d5e, d5f, d5g, d5h) # satır bağlama veri kümeleri
    4. Hesaplanan oranları içeren .csv dosyasını dışa aktarmak için şu kodu kullanın:
      # ST ve AMR loci bilgilerini içeren veri tablosunu dışa aktarma
      abx_newport_st <- d6 write.csv(abx_newport_st,"abx_newport_st.csv", row.names = FALSE)
    5. ST soyları arasında AMR tabanlı dağılımı çizmeden önce, görselleştirmeleri kolaylaştırmak için verileri aşağıda gösterildiği gibi bir eşiğe göre filtreleyin:
      # AMR lokuslarını %10'a eşit veya daha yüksek oranda filtreleyin
      d7 <- %> filtre(prop >= 10) # eşik ampirik veya istatistiksel olarak belirler
  5. Çekirdek-genom filogenisini, hiyerarşik genotipik sınıflandırmalar ve AMR verileriyle birlikte ggtree kullanarak tek bir grafikte çizin (Şekil 5).
    1. Yukarıda belirtilen parametreleri kullanarak ggtree içindeki şekil boyutunu optimize edin (bkz. adım 5.1.1.).
    2. Değişkenleri toplayarak veya gen varlığı ya da yokluğu gibi ikili sınıflandırmaları kullanarak görselleştirmeleri optimize edin. Grafiğe ne kadar çok özellik eklenirse, renklendirme seçim süreci o kadar zorlaşır (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/figure_5.Rmd).
      NOT: Ek şekiller - tüm kodun ayrıntılı açıklaması burada bulunabilir (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/data_analysis_R_code.Rmd).
  6. En sık görülen genotipleri vurgularken ST soylarının veya cgMLST varyantlarının dağılımını görüntülemek için ggplot2'de veri toplama olmadan bir dağılım grafiği kullanın (Ek Şekil 1) (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/supplementary_figure_s1.Rmd).
  7. ST tabanlı genetik çeşitliliğe bir göz atmak için ST soylarının bileşimini cgMLST varyantlarının oranı ile değerlendirmek için iç içe geçmiş bir analiz yapın, aynı zamanda en sık görülen varyantları ve genetik ilişkilerini (yani, aynı ST'ye ait olan cgMLST varyantları, farklı ST'lere ait olanlardan daha yakın zamanda bir atayı paylaştı) (Ek Şekil 2 ) (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/supplementary_figure_s2.Rmd).
  8. Ana ST soylarının her birinin klonalite derecesini veya genotipik çeşitliliğini ölçmek için topluluk ekolojisi metriğini, yani Simpson'ın D çeşitlilik indeksini kullanın43 (Ek Şekil 3).
    1. BAPS seviye 1 ila 6 ve cgMLST dahil olmak üzere farklı genotipik çözünürlük seviyelerinde ST soyları arasındaki çeşitlilik indeksini hesaplayın. Aşağıda, genotipik çözünürlüğün BAPS seviye 1'inde (BAPS1) bu hesaplamanın nasıl yapılacağına ilişkin kod örneği verilmiştir:
      # BAPS seviye 1 (BAPS1)
      # ST'leri ve BAPS1'i NA'larla bırakın, ST ve BAPS1'e göre gruplandırın ve ardından Simpson endeksini hesaplayın
      baps1 <- veri6 %>%
      select(st, BAPS1) %>% # select sütunları
      drop_na(st, BAPS1) %>% # bırakma NA'lar
      group_by(st, BAPS1) %>% # sütunlara göre gruplandır
      summarise(n = n()) %>% # sayım gözlemleri
      mutate(simpson = diversity(n, "simpson")) %>% # çeşitliliği hesapla
      group_by(st) %>% # sütuna göre gruplandır
      summarise(simpson = mean(simpson)) %>% # indeksin ortalamasını hesaplayın
      melt(id.vars=c("st"), measure.vars="simpson",
      variable.name="index", value.name="value") %>% # uzun formatta gizli
      mutate(strat = "BAPS1") # bir strat sütunu oluşturun
      NOT: Genetik olarak daha çeşitli bir popülasyon (yani, farklı genotipik çözünürlük katmanlarında daha fazla varyant), cgMLST düzeyinde daha yüksek bir indekse sahiptir ve BAPS seviye 2'den 6'ya (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/supplementary_figure_s3.Rmd) giden artan bir indeks tabanlı değerler üretir.
  9. Tüm çözünürlük düzeylerinde (BAPS1-6) BAPS alt gruplarının göreceli sıklığını çizerek ST soylarının genotipik çeşitliliğinin derecesini inceleyin (Ek Şekil 4). Popülasyon ne kadar çeşitli olursa, BAPS alt gruplarının (haplotipler) dağılımı o kadar seyrek hale gelir BAPS1'den (düşük çözünürlük seviyesi) BAPS6'ya (daha yüksek çözünürlük seviyesi) (https://github.com/jcgneto/jove_bacterial_population_genomics/blob/main/code/supplementary_figure_s4.Rmd).

Sonuçlar

Popülasyon genomik analizleri için hesaplama platformu ProkEvo'yu kullanarak, bakteriyel WGS veri madenciliğinde ilk adım, hiyerarşik popülasyon yapısını bir çekirdek-genom filogenisi bağlamında incelemekten ibarettir (Şekil 1). S. durumunda. enterica soyu I, S tarafından örneklendiği gibi . Newport veri kümesi, popülasyon hiyerarşik olarak aşağıdaki gibi yapılandırılmıştır: serovar (en düşük çözünürlük düzeyi), BAPS1 alt grupl...

Tartışmalar

Sistem tabanlı sezgisel ve hiyerarşik popülasyon yapısı analizinin kullanılması, benzersiz ekolojik ve epidemiyolojik kalıpları açıklama potansiyeline sahip bakteri veri kümelerindeki yeni genomik imzaları tanımlamak için bir çerçeve sağlar20. Ek olarak, aksesuar genom verilerinin popülasyon yapısına haritalanması, ST soylarının veya cgMLST varyantlarının rezervuarlar 6,20,21,45,46 arasında yayılmasını kolaylaştıran atalardan edinilmiş ve / veya yakın ...

Açıklamalar

Yazarlar, rakip çıkarların olmadığını ilan etmişlerdir.

Teşekkürler

Bu çalışma, UNL-IANR Tarımsal Araştırma Bölümü ve Ulusal Antimikrobiyal Direnç Araştırma ve Eğitim Enstitüsü ve Gıda Bilimi ve Teknolojisi Departmanı'ndaki (UNL) Nebraska Sağlık için Gıda Merkezi tarafından sağlanan fonlarla desteklenmiştir. Bu araştırma ancak Nebraska Araştırma Girişimi'nden destek alan UNL'deki Hollanda Bilgi İşlem Merkezi'ni (HCC) kullanarak tamamlanabildi. Ayrıca, HCC aracılığıyla, Ulusal Bilim Vakfı ve ABD Enerji Bakanlığı Bilim Ofisi tarafından desteklenen Açık Bilim Şebekesi (OSG) tarafından sağlanan kaynaklara erişebildiğimiz için minnettarız. Bu çalışmada Ulusal Bilim Vakfı tarafından finanse edilen Pegasus İş Akışı Yönetim Yazılımı kullanılmıştır (hibe #1664162).

Malzemeler

NameCompanyCatalog NumberComments
amr_data_filteredhttps://figshare.com/account/projects/116625/articles/14829225?file=28758762
amr_data_rawhttps://figshare.com/account/projects/116625/articles/14829225?file=28547994
baps_outputhttps://figshare.com/account/projects/116625/articles/14829225?file=28548003
Core-genome phylogenyhttps://figshare.com/account/projects/116625/articles/14829225?file=28548006
genome_srahttps://figshare.com/account/projects/116625/articles/14829225?file=28639209
Linux, Mac, or PCany high-performance platform
mlst_outputhttps://figshare.com/account/projects/116625/articles/14829225?file=28547997
sistr_outputhttps://figshare.com/account/projects/116625/articles/14829225?file=28548000
figshare credentials are required for login and have access to the files

Referanslar

  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. MLST. GitHub Available from: https://github.com/tseemann/mist (2020)
  29. ABRicate. GitHub Available from: https://github.com/tseemann/abricate (2020)
  30. R: A language and environment for statistical computing. R Foundation for Statistical Computing Available from: https://cran.r-project.org (2021)
  31. Wickham, H., et al. Welcome to the Tidyverse. Journal of Open Source Software. 4 (43), 1686 (2019).
  32. rOpenSci: The skimr package. GitHub Available from: https://github.com/ropensci/skimr/ (2021)
  33. . vegan: Community ecology package. R package version 2.5-5 Available from: https://CRAN.R-project.org/package=vegan (2019)
  34. Yu, G. Using ggtree to visualize data on tree-like structures. Current Protocols in Bioinformatics. 69 (1), (2020).
  35. . ggpubr: "ggplot2" Based Publication Ready Plots. R package version 0.4.0 Available from: https://CRAN.R-project.org/package=ggpubr (2020)
  36. . 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)
  37. Wickham, H. Reshaping Data with the reshape Package. Journal of Statistical Software. 21 (12), (2007).
  38. . RColorBrewer: ColorBrewer Palettes. R package version 1.1-2 Available from: https://CRAN.R-project.org/package=RColorBrewer (2014)
  39. 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).
  40. 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).
  41. Mitchell, P. K., et al. Population genomics of pneumococcal carriage in Massachusetts children following introduction of PCV-13. Microbial Genomics. 5 (2), (2019).
  42. Klemm, E. J., et al. Emergence of host-adapted Salmonella Enteritidis through rapid evolution in an immunocompromised host. Nature Microbiology. 1 (3), 15023 (2016).
  43. Břinda, K., et al. Rapid inference of antibiotic resistance and susceptibility by genomic neighbour typing. Nature Microbiology. 5 (3), 455-464 (2020).
  44. 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).
  45. Mageiros, L., et al. Genome evolution and the emergence of pathogenicity in avian Escherichia coli. Nature Communications. 12 (1), 765 (2021).
  46. 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).
  47. 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).
  48. 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).
  49. Zhao, S., et al. Adaptive evolution within gut microbiomes of healthy people. Cell Host & Microbe. 25 (5), 656-667 (2019).
  50. 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).
  51. 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).
  52. 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).
  53. 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).
  54. Lees, J. A., et al. Fast and flexible bacterial genomic epidemiology with PopPUNK. Genome Research. 29 (2), 304-316 (2019).
  55. 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).
  56. Cohan, F. M., Koeppel, A. F. The origins of ecological diversity in prokaryotes. Current Biology. 18 (21), 1024-1034 (2008).
  57. Cohan, F. M. Transmission in the origins of bacterial diversity, from ecotypes to phyla. Microbial Transmission. 5 (5), 311-343 (2019).
  58. Davis, J. J., et al. The PATRIC bioinformatics resource center: expanding data and analysis capabilities. Nucleic Acids Research. 48, 606-612 (2019).
  59. 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).

Yeniden Basımlar ve İzinler

Bu JoVE makalesinin metnini veya resimlerini yeniden kullanma izni talebi

Izin talebi

Daha Fazla Makale Keşfet

GenetikSay 178

This article has been published

Video Coming Soon

JoVE Logo

Gizlilik

Kullanım Şartları

İlkeler

Araştırma

Eğitim

JoVE Hakkında

Telif Hakkı © 2020 MyJove Corporation. Tüm hakları saklıdır