Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 

Repository files navigation

BayesADME: Bayesian Genomic Prediction Software Integrating Genetic Effects and Functional AnnotationsBayesADME is an innovative Bayesian genomic prediction software implemented in Python. It is designed to provide a powerful and flexible computational tool for analyzing the genetic architecture of complex traits by integrating additive effects, dominance effects, epistatic effects, and functional genomic annotations. The scientific foundation of this software stems from research in sheep genomic prediction [1], aiming to enhance prediction accuracy and improve the biological interpretability of models.Core FeaturesComprehensive Genetic Effect Modeling: Jointly estimates marker additive effects, dominance effects, and pairwise additive × additive epistatic interaction effects.Functional Annotation Integration: Allows users to incorporate SNP functional annotations (e.g., gene regions, QTL regions), which inform category-specific prior distributions for SNP effects, inspired by the BayesRC methodology [1].Bayesian Variable Selection: Utilizes mixture prior distributions (comprising a point mass at zero and Normal distribution components for different effect sizes) to perform automatic variable selection, identifying markers with significant contributions to the trait.Stochastic Search for Epistatic Interactions: Employs a stochastic search strategy to efficiently identify potential interacting SNP pairs, managing computational complexity.Rich Output Results: Provides Genomic Estimated Breeding Values (GEBVs), estimates of variance components for various genetic effects, and Posterior Inclusion Probabilities (PIPs) for all effects.Installation GuideSystem RequirementsPython 3.9 or higherPip (Python package installer)Core dependencies: NumPy, SciPy, Pandas, PyYAML (see setup.py for details)Installation StepsClone the repository (if installing from source):git clone https://github.com/meibujun/bayesadme.git # Please replace with the actual repository URL cd bayesadme Install using pip:From local source:pip install . If published to PyPI in the future:# pip install bayesadme Verify installation:After installation, you can check if the software's command-line interface is accessible:bayesadme --help Quick StartBayesADME is primarily run via its command-line interface (CLI). The core command for analysis is run, which requires a YAML configuration file.bayesadme run --config /path/to/your_config.yml Configuration File (config.yml)All runtime parameters, including input file paths, MCMC settings, model choices, and prior parameters, are specified in a YAML configuration file. For a detailed example and parameter descriptions, please refer to the software documentation or the example config.yml (e.g., as shown in the bayesadme_config_yml_example document).A simplified configuration example:# --- Input Files --- phenotype_file: "data/phenotypes.csv" additive_genotype_file: "data/additive_genotypes.csv"

dominance_genotype_file: "data/dominance_genotypes.csv" # Optional

annotation_file: "data/annotations.csv" # Optional

--- Output Settings ---

output_dir: "bayesadme_results" output_prefix: "my_study"

--- MCMC Settings ---

num_iterations: 20000 burn_in: 5000 thinning: 10 random_seed: 123

--- Model Components ---

derive_dominance_from_additive: true include_dominance: true include_epistasis: true

... other parameters like prior variances, etc.

Input File FormatsPhenotype Data: CSV/TSV file, with at least two columns: Individual ID and Phenotype Value.Additive Genotype Data: CSV/TSV file, individuals as rows, SNPs as columns. Typically coded as 0, 1, 2.Dominance Genotype Data (Optional): Same format as additive, typically coded 0 (homozygote) / 1 (heterozygote), or can be derived by the software from additive data.Functional Annotation Data (Optional): CSV/TSV file, with at least two columns: SNP ID and Functional Category.For detailed input file format specifications, please refer to Section V of the "BayesADME Software Design and Analysis" document.Output ResultsUpon completion, BayesADME generates a series of output files in the specified output directory, including:Run summary (_summary.txt)Genomic Estimated Breeding Values (_gebv.csv)Effect estimates and PIPs for each effect type (_additive_effects.csv, _dominance_effects.csv, _epistatic_effects.csv)Estimated variance componentsMCMC trace plots (for diagnostics)For a detailed guide on interpreting output files, refer to Section VII of the "BayesADME Software Design and Analysis" document.Software Design PhilosophyThe design of BayesADME adheres to principles of modularity, efficiency, extensibility, and user-friendliness. It aims to accurately implement complex Bayesian models while providing users with flexible configuration options to suit diverse research needs.ContributingContributions to the BayesADME project are welcome! If you have suggestions, bug reports, or wish to add new features, please engage with us via GitHub Issues or Pull Requests.Future Development DirectionsSupport for additional types of epistatic interactions (e.g., DA, DD).More sophisticated handling of Linkage Disequilibrium (LD).Integration of Genotype-by-Environment (G×E) interaction effects.Computational performance optimization, such as GPU acceleration.Development of a Graphical User Interface (GUI).CitationIf you use BayesADME in your research, please cite the relevant scientific literature (please add specific citation details here, based on the core research the project is founded upon, e.g., reference [1] from the design document) and this software's GitHub repository.LicenseThis project is licensed under the GNU GENERAL PUBLIC LICENSE. See the LICENSE file for details.[1] Reference to the foundational scientific paper, e.g., "A Bayesian Genomic Prediction Model Integrating Additive, Dominance, Epistasis, and Functional Annotation."

About

A Bayesian Genomic Prediction Model Integrating Additive, Dominance, Epistasis, and Functional Annotations in Sheep

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages