jananiravi / bugphyzz

Harmonized annotation of microbial physiology

Home Page:http://waldronlab.io/bugphyzz/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

bugphyzz (bacterial physiologies)

Lifecycle: experimental CRAN status

bugphyzz is a collection of physiological features about bacteria to be used as a resource for physiological discovery and producing signatures. We are continuously curating bugphyzz databases through 3 main methods: webscraping, bulk download from online databases, and manual curation from literature. Mainly this database was concieve for analyzing microbiome data using physiological information. BugPhyzz can allow a user to look at specific physiologies, and make signature sets with specific bugs. The uniform structure of the data is what allows for the latter to manifest.

We curated informatiob like Gram stain, optimal temperature, fermenation, respiration, size, shape, colony arrangement, and 27 more physiologies. We have made BugPhyzz accessible via direct download or through our R package.

Here, you can find installation instructions, examples of making signatures, bugphyzz analysis link and how to add your own curation to the database.

Installation

You can install the development version of bugphyzz with:

# install.packages("devtools")
devtools::install_github("waldronlab/bugphyzz")

Some examples of how to create signatures

suppressMessages({
    library(bugphyzz)
    library(purrr)
    aer <- physiologies('aerophilicity')[[1]]
    ph <- physiologies('optimal ph')[[1]]
})

## Example 1
## Create a signature of genera with experimental evidence at a 
## Frequency of always using the NCBI taxids. Minimumn of 10 microbes per
## signature
aer_sig <- makeSignatures(
    aer, tax.id.type = 'NCBI_ID', tax.level = 'genus', 
    Frequency = 'always', Evidence = 'exp', min.size = 10
)
#> Warning: Dropping 3648 rows with FALSE values.
#> Creating signature for categorical attributes.

map_int(aer_sig, length)
#>                 aerobic               anaerobic facultatively anaerobic 
#>                     574                     294                     174 
#>         microaerophilic      obligately aerobic    obligately anaerobic 
#>                      17                      52                     104
map(aer_sig, ~ head(.x, 2))
#> $aerobic
#> [1]  291967 1078830
#> 
#> $anaerobic
#> [1] 1427378   33951
#> 
#> $`facultatively anaerobic`
#> [1]  2147 12914
#> 
#> $microaerophilic
#> [1] 46352 12960
#> 
#> $`obligately aerobic`
#> [1] 442869    434
#> 
#> $`obligately anaerobic`
#> [1] 258514  31980


## Example 2
## Create a signature of acidiphilic species using the Taxon names
acid_sig <- makeSignatures(
    df = ph, tax.id.type = 'Taxon_name', tax.level = 'species',
    max = 4
)
#> Creating signature for continuous attribute.
head(acid_sig[[1]])
#> [1] "Leptospirillum ferriphilum"     "Sulfobacillus acidophilus"     
#> [3] "Acidithiobacillus ferrivorans"  "Acidithiobacillus ferrooxidans"
#> [5] "Acidimicrobium ferrooxidans"    "Thermoplasma volcanium"

## Create a signature of Alkaliphilic species using the Taxon names
basic_sig <- makeSignatures(
    df = ph, tax.id.type = 'Taxon_name', tax.level = 'species', 
    min = 8
)
#> Creating signature for continuous attribute.
head(basic_sig[[1]])
#> [1] "Arhodomonas aquaeolei"        "Glaciecola nitratireducens"  
#> [3] "Pseudomonas coronafaciens"    "Sodalis glossinidius"        
#> [5] "Photorhabdus luminescens"     "Hyphomicrobium nitrativorans"

Created on 2022-09-01 with reprex v2.0.2

bugphyzzAnalyses

Some analyses using data provided by this package can be found at https://waldronlab.io/bugphyzzAnalyses/

How to add a new attribute in GitHub to the bugphyzz database

Curation steps:

  1. Add attributes of physiology to Attributes using ontology terms
  2. Add reference(s) to Confidence in Curation

If using Google Sheets, publish a csv file to web:

  1. Add Google Doc "publish to web" link and add in Link
  2. Add Google Doc link to Source Link

About

Harmonized annotation of microbial physiology

http://waldronlab.io/bugphyzz/

License:Other


Languages

Language:Jupyter Notebook 98.5%Language:R 1.5%