| Core microbiome 이란?
샘플에서 가장 주요한 마이크로바이옴을 분석하는 방법으로 주로, 아래와 같은 그림으로 나타낸다.
Core microbiome의 개념은 아직 정립되지 않았지만 주로 전체 샘플에서 많은 빈도로 나타내는 microbiome을 뜻한다. 자세한 정의는 Salonen et al. 2012를 참고하길 바란다. 그러나 Alexander et al. 2021을 보면 Core microbiome의 정의는 논문마다 매우 다르다.
먼저 occurrence를 기준으로 한 논문의 50%에서는 모든 샘플에서 보이는 taxa를 Core microbiome이라고 정의하였으며, relative abundance를 기준으로 한 논문의 대다수는 특정적인 cutoff가 없었지만 1% 이상을 Core microbiome이라고 정의하는 논문도 있다.
| 예제 데이터
- qiime2 moving pictures Tutorial에 나오는 데이터로, 사람의 4 부위에 해당하는 마이크로바이옴 데이터를 담고 있다.
- 이 데이터는 phyloseq 데이터로, biom형식으로 구성되어 있다. [참고]
| 시각화하기
library(phyloseq)
library(ggplot2)
library(microbiome)
library(viridis)
library(RColorBrewer)
여기서 주로 사용하는 패키지는 "microbiome"이다.
ps <- readRDS("./ps.rds")
ps.rel <- microbiome::transform(ps, "compositional")
ps.rel2 <- prune_taxa(taxa_sums(ps.rel) > 0, ps.rel)
먼저 파일을 불러오고, relative abundance로 바꾸자.
core.taxa.standard <- core_members(ps.rel2, detection = 1/1000, prevalence = 50/100)
# [1] "e8e6b7fc969005938de8ac7ffb94f17c" "b44621e5c80607cdfacbf7a81e1cbe41"
# [3] "d29fe3c70564fc0f69f2c03e0d1e5561" "d1d750ce3b00503c204516d27ca0d3b0"
# [5] "1d2e5f3444ca750c85302ceee2473331" "d8e8459398f3f096775f4298666880a7"
pseq.core <- core(ps.rel, detection = 0.1/100, prevalence = 50/100)
# phyloseq-class experiment-level object
# otu_table() OTU Table: [ 6 taxa and 34 samples ]
# sample_data() Sample Data: [ 34 samples by 8 sample variables ]
# tax_table() Taxonomy Table: [ 6 taxa by 7 taxonomic ranks ]
# phy_tree() Phylogenetic Tree: [ 6 tips and 5 internal nodes ]
이 데이터 에서는 Relatve abundance가 1/1000 (>0.1%) 이상이며, 전체 샘플에서 50% 이상의 샘플에서 공통적으로 나타난 OTU를 Core microbiome이라고 정의 내리겠다.
여러 논문에 prevalence를 100/100으로 잡는것에 비해, 위 예제 데이터는 오직 770종류의 OTU만 가지고 있기 때문에 많은 수의 core microbiome을 얻기 힘들기 때문에 0.5를 기준으로 잡았다.
# Core with compositionals:
prevalences <- seq(.05, 1, .05)
detections <- round(10^seq(log10(1e-3), log10(.2), length = 10))
p.core <- plot_core(ps.rel2,
plot.type = "heatmap",
colours = rev(brewer.pal(5, "Spectral")),
prevalences = prevalences,
detections = detections,
min.prevalence = .5)
p.core
이를 해석해보면 맨 위에 있는 d29 fe3~~라고 적힌 OTU는 풍부도가 낮을 때 Prevalence가 높다.
제일 아래 있는 d8e84~~ OTU도 풍부도가 낮을수록 Prevalence가 높지만 d29 fe3~보다는 낮은 편이다.
core microbiome인 6개의 OTU가 각각 어떤 Species인지 알아보자.
taxonomy <- as.data.frame(tax_table(ps.rel2))
# Subset this taxonomy table to include only core OTUs
core_taxa_id <- subset(taxonomy, rownames(taxonomy) %in% core.taxa.standard)
core_taxa_id$Species
# [1] "Rothia mucilaginosa" "Unclassified Streptococcus"
# [3] "Unclassified Streptococcus" "Unclassified Gemellaceae"
# [5] "Haemophilus parainfluenzae" "Unclassified [Prevotella]"
| 참고
- https://www.pnas.org/doi/10.1073/pnas.2104429118
- https://microbiome.github.io/tutorials/Core.html
- https://web.stanford.edu/class/bios221/Pune/Labs/Lab_microbiome/Lab_microbiome.html
- http://siobhonlegan.com/BIO514-microbiome/06_data_visualization.html