library(bugsigdbr)
library(dplyr)
df <- importBugSigDB(version = "devel", cache = TRUE)
## Using cached version from 2025-07-19 15:29:21
dfp <- filter(df, grepl("Parkinson", df$Condition) &
grepl("healthy|control", df$`Group 0 name`, ignore.case=TRUE) &
!grepl("Parkinson's disease patients", df$`Group 0 name`, ignore.case=TRUE) &
`Host species` == "Homo sapiens" &
grepl("Faecalibacterium", df$`MetaPhlAn taxon names`)
)
length(unique(dfp$Study)) # studies
## [1] 26
nrow(dfp) # signatures
## [1] 52
library(bugSigSimple)
res <- bugSigSimple::createTaxonTable(dfp, n=40) |>
select(c(1, 2, 4, 5))
res <- filter(res, grepl("Blautia|Roseburia|Faecalibacterium|Fusicatenibacter saccharivorans|Anaerostipes hadrus|Bacteroides ovatus|Eubacterium rectale", res$`Taxon Name`))
kableExtra::kable(res)
Faecalibacterium |
genus |
2 |
36 |
Roseburia |
genus |
0 |
21 |
Faecalibacterium prausnitzii |
species |
0 |
13 |
Blautia |
genus |
0 |
12 |
Blautia wexlerae |
species |
0 |
6 |
Roseburia intestinalis |
species |
0 |
6 |
Roseburia inulinivorans |
species |
0 |
6 |
Roseburia faecis |
species |
0 |
5 |
Faecalibacterium sp. UBA1819 |
species |
4 |
0 |
Roseburia hominis |
species |
0 |
3 |
sigs <- getSignatures(dfp, tax.id.type = "taxname")
writeGMT(sigs, gmt.file = "~/Downloads/PDsignatures.txt")