$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
1. Veri İndirme
- NCBI veritabanını oluşturan PRJNA386367 katılım verilerini indirin. PRJNA386367 katılım verilerinden, 2014 yılında Arbuckle, Kaliforniya'daki batık bir pirinç tarlasında 14 hafta boyunca yetiştirilen pirinç bitkilerinden rizosfer, rhizoplane ve endosfer mikrobiyom verilerini seçin.
NOT: Rizosfer, rhizoplane ve endosfer mikrobiyom verileri PRJNA386367 katılımda OPU'lar tablosu tarafından sunulmuştur.
2. Optimum güç değeri belirleme
NOT: WGCNA paketi aşağıdaki işlev parametrelerinin tümlerini içerir. WGCNA, ağırlıklı korelasyon ağı analizi için bir R paketidir. Anahtar komut satırları Ek S1'e başvurur.
- R dil ortamında, Rstudio yazılımını açın ve WGCNA paketini yükleyin.
- Verileri yükleyin ve verilerin doğruluğunu kontrol etmek için goodSamplesGenes işlevini kullanın. Komut satırlarını yürütün:
"gsg = goodSamplesGenes(datExpr0, ayrıntılı = 3)
gsg$allOK "
Çalıştır 'ıtıklatın.
- Aykırı değerleri kontrol edin ve gereksinimleri karşılayan örnekleri saklayın. Denetim sonucu DOĞRU olduğunda, sonraki adıma geçin. Sonucu kaydedin.
- Farklı güç değerleri altında verinin iki grubunun ölçeksiz dizini R2'yi hesaplamak için PickSoftThreshold işlevini kullanın. Komut satırını yürütün:
"sft = pickSoftThreshold(datExpr0, powerVector = güçler, ayrıntılı = 5)"
Çalıştır 'ıtıklatın.
- Sonuçları görselleştirin (Şekil 1). Komut satırını yürütün:
"plot(sft$fitIndices[,1], -sign(sft$fitIndices[,3])*sft$fitIndices[,2],
xlab="Yumuşak Eşik (güç)",ylab="Ölçeksiz Topoloji Modeli Sığdır,R^2 imzalı",type="n",
main = yapıştırma("ES_Scale bağımsızlığı"));
metin(sft$fitIndices[,1], -sign(sft$fitIndices[,3])*sft$fitIndices[,2],
etiketler=güçler,cex=cex1,col="kırmızı");
abline(h=0,9,col="kırmızı")
plot(sft$fitIndices[,1], sft$fitIndices[,5],
xlab="Yumuşak Eşik (güç)",ylab="Ortalama Bağlantı", type="n",
main = yapıştır("ES_Mean bağlantı"))
metin(sft$fitIndices[,1], sft$fitIndices[,5], labels=powers, cex=cex1,col="red")"
Çalıştır 'ıtıklatın.
NOT: Ağırlıklı korelasyon ağı algoritmasının öncülü, kurulan ortak ifade ağ yapısının ölçeksiz topoloji kriterinin standartlarına uygun olması ve sağlamlığını artırmasıdır. 1'e yakın ölçeksiz dizin, ölçeksiz ağa daha yakın bir ağ yapısını gösterir.
- Ölçek içermeyen R 2 endeksi0,9'dan büyük olduğunda güç değerini seçin ve bir sonraki analiz adımına geçin.
NOT: Ölçeksiz dizin 1'e yakın olduğunda, ağ yapısı ölçeksiz ağa daha yakındır. İki veya daha fazla ağı analiz ederken, birlikte ifade edilen ağlar arasındaki karşılaştırılmayı karşılamak için her ağı ölçeksiz ağın güç değerine yakın hale getirmek gerekir.
3. Ortak ifade ağının ve modül tanımlamasının inşası
NOT: Yukarıdaki hesaplanan güç değerine bağlı olarak, birlikte oluşum ağı oluşturulur. Anahtar komut satırları Ek S2'ye başvurur.
- Sembolik bir birlikte oluşum ağının inşası için imzalı parametreler eklemek üzere WGCNA paketindeki bitişiklik işlevini kullanın. Komut satırını yürütün:
"bitişiklik = bitişiklik(datExpr0, güç = softPower)"
Çalıştır 'ıtıklatın.
- Üst düzey çakışan bir ağ geliştirmek ve benzerlik ağını hesaplamak için TOM benzerliği işlevini uygulayın. Komut satırını yürütün:
"TOM = TOMsimilarity(bitişiklik);
dissTOM = 1-TOM"
Çalıştır 'ıtıklatın.
NOT: Topoloji çakışma ağ türünü ayarlamak için imzalı parametre eklendi.
- Hiyerarşik kümeleme için ortalama bağlantı hiyerarşik kümeleme yöntemini seçmek için hclust işlevini kullanın. Komut satırını yürütün:
"geneTree = hclust(as.dist(dissTOM), yöntem = "ortalama");"
Çalıştır 'ıtıklatın.
- Dinamik dal kesme gerçekleştirmek için cutreeDynamic işlevini kullanın ve minClusterSize parametresini 30 olarak ayarlayın. Modül tanıma sonucunu alın. Komut satırını yürütün:
"dynamicMods = cutreeDynamic(dendro = geneTree, distM = dissTOM, deepSplit = 2, pamRespectsDendro = FALSE, minClusterSize = minModuleSize);"
Çalıştır 'ıtıklatın.
NOT: En küçük modül boyutu 30'dan düşük olamaz.
- Her OTU modülünün modül eigenes modülEigenes işlevi tarafından hesaplayın. Komut satırını yürütün:
"MEList = moduleEigengenes(datExpr0, renkler = dynamicColors)
MEs = MEList$eigengenes"
Çalıştır 'ıtıklatın.
NOT: Eigen modülü, modüldeki genel OTU ifade düzeyini temsil etti. Belirli bir OTU değil, tekil ağ değeri ayrışmasıyla elde edilen her kümenin ilk ana bileşeniydi.
- Eigen modülünün korelasyon katsayısına göre küme işlevini gerçekleştirin. Modülleri 0,25'ten düşük bir değerle birleştirmek için mergeCloseModules işlevini kullanın. Komut satırını yürütün:
"merge = mergeCloseModules(datExpr0, dynamicColors, cutHeight = MEDissThres, ayrıntılı = 3)"
Çalıştır 'ıtıklatın.
- Son olarak, her ortak ifade ağının modül atama görüntüleme diyagramını elde etmek için görselleştirme için plotDendroAndColors işlevini kullanın (Şekil 2). Modül atama tablosunun her OTin'ine karşılık gelen modül ilişkilendirmesini ayıklamak için tablo işlevini kullanın. Komut satırını yürütün:
"plotDendroAndColors(geneTree, mergedColors, "Birleştirilmiş dinamik",dendroLabels = YANLIŞ,
askıda kalma = 0,03,addGuide = DOĞRU, guideHang = 0,05,
main = "ES_Gene dendrogram ve modül renkleri")"
Çalıştır 'ıtıklatın.
NOT: Birlikte ifade eden ağın modül atama diyagramında, farklı renkler farklı modülleri, gri ise herhangi bir modüle sınıflandırılamayan OTU'ları temsil eder. Gri modüldeki daha fazla sayıda OTU, ifade matrisinin erken aşama ön işleme kalitesinin düşük olduğunu gösterir.
4. Modül karşılaştırması
NOT: Bu yöntem, iki ekolojik mikrobiyal topluluğun ağ modüllerini karşılaştırmak için kullanılabilir. Bu makalede, mikrobiyal ağ modüllerinin endosfer ve rhizoplane, endosfer ve rizosfer, rizosfer ve rhizosplane arasındaki farklarını karşılaştırın.
- Koruma testi
- Önceki adımlarda kaydedilen iki veri kümesinin parametrelerini ve sonuçlarını yükleyin.
- Bir grup mikrobiyal verinin ağ modülü atama sonucunu başvuru grubu olarak, diğer grubu ise test grubu olarak ayarlayın.
- Z_summary ve medianRank muhafazakarlık istatistiksel parametrelerinin değerlerini hesaplamak için modulePreservation işlevini kullanın. Komut satırını yürütün:
"system.time({mp=modulePreservation(multiExpr,
multiColor,referenceNetworks=1,
nPermutation=100, randomSeed=1,quickCor=0,verbose=3)})"
Çalıştır 'ıtıklatın.
NOT: Bu sonuç modüller arasındaki muhafazakarlığı ölçebilir. Z_summary>10, iki modülün yüksek oranda korunduğunu gösterirken, Z_summary<2 korunmayan modülleri gösterir. medianRank, sıralama ile değerlendirilen modülün göreli korunmasını ifade eder. Daha yüksek medianRank değerleri korunmayan modülleri gösterir. (Anahtar komut satırları Ek S3'ebaşvurur.)
- Sonuçları görselleştirmek için çizim işlevini kullanın (Şekil 3). parametreleri alın Z_summary ve medianRank (Tablo 1).
NOT: Hem 2'den küçük Z_summary değerini hem de en üstteki ortanca Rank değerini karşılayan ağ modülleri, iki ekolojik mikrobiyal topluluktaki en yüksek oranda korunmayan modüldür.
- İki ağın en yüksek oranda korunmayan modülüne sahip modülü tanımlamak için yukarıda belirtilen iki istatistiksel parametrenin sonuçlarına dayanmaktadır.
- Modül üyeliğinin korelasyon analizi
- İki ağın modül atama sonuçlarının sırasıyla başvuru ve test grubu olarak ayarlandığını ayarlayın.
NOT: Ayarların Koruma testiyle aynı olması gerekir.
- Birkaç aday modüldeki her OTU'nun kME (modül üyeliği) değerini ayıklamak için corPvalueStudent işlevini kullanın.
Komut satırını yürütün:
"Pvalue = as.data.frame(corPvalueStudent(as.matrix
(ModuleMembership), Örnekler))""
Çalıştır 'ıtıklatın.
NOT: kME modül üyeliği derecesini temsil ediyor. ME, modüldeki OTU ifadesinin genel düzeyini temsil eden eigen modül anlamına gelir. kME, her OTU ve ME arasındaki korelasyon katsayısıdır. OTU'nun ağdaki önemini OTU'nun kME değerine göre ölçün. (Anahtar komut satırları Ek S4'e başvurur.)
- Ardından, iki ağdaki karşılık gelen OTU'ların kME değerinin korelasyon katsayısını hesaplamak ve korelasyon analiz diyagramını çizmek için verboseScatterplot işlevini kullanın (Şekil 4).
Komut satırını yürütün:
"verboseScatterplot(abs(TModuleMembership
[TmoduleGenes, Tcolumn]),
abs(NModuleMembership[NmoduleGenes, Ncolumn]),
xlab = yapıştır("kME in", "ES"),
ylab = yapıştır("kME in", "RP"),
main = yapıştır("lightyellow"),
cex.main = 1.7, cex.lab = 1.6, cex.axis = 1.6, col = modulecolor)"
Çalıştır 'ıtıklatın.
- İki ağın OTU'sunun kME değerinin en küçük korelasyon katsayısına sahip modülü seçin. Bu modülün iki ağın en büyük farkına sahip olduğunu düşünün.
5. Mikrobiyal diferansiyel ağ modülünün analizi
- Modülün OTU sıra kümesinin istatistiksel analizi ile baskın bakteri phyla'nın verilerini en büyük farkla elde edin.
NOT: Modülün en büyük farka sahip OTU sıra kümesi phyla taksonomisi ile toplanır. Baskın bakteri phyla% 10'dan fazlasını oluşturdu.
- Ardından, en büyük fark modülünde OTU'nun etkileşim ilişkisi bilgilerini içeren dosyayı elde etmek için exportNetworkToCytoscape işlevini kullanın.
Komut satırını yürütün:
"cyt = exportNetworkToCytoscape(modTOM,
edgeFile = yapıştırma("NEW-ES_CytoscapeInput-edges-", modüller , ".txt", sep=""),
nodeFile = yapıştırma("NEW-ES_CytoscapeInput-nodes-", modüller, ".txt", sep=""),
ağırlıklı = DOĞRU,eşik = 0,5, nodeNames = modProbes,
altNodeNames = modGenes, nodeAttr = moduleColors[inModule])"
Çalıştır 'ıtıklatın.
- Dosyayı Cytoscape'e aktarın. Eşiği 0,5 olarak ayarlayın ve diğer parametreleri gerektiği gibi ayarlayın.
- Diferansiyel mikroorganizmalardan oluşan bir ortak oluşum ağı oluşturun (Şekil 5).
- Ağdaki en önemli düzenleyici role sahip çekirdek cinsin bilgilerini elde etti.
NOT: OUT'un kME değerine göre çekirdek cins tanımlanabilir.
- Son olarak, çekirdek cinsin işlevleri değerlendirildi ve tüm fark ağı üzerindeki etkisi analiz edildi.