Skip to main content

SimPhyni: a tool for phylogenetic trait simulation and inference.

Reason this release was yanked:

dependency conflicts with python 3.10

Project description

SimPhyNI

Overview

SimPhyNI (Simulation-based Phylogenetic iNteraction Inference) is a phylogenetically-aware framework for detecting evolutionary associations between binary traits (e.g., gene presence/absence, major/minor alleles, binary phenotypes) on microbial phylogenetic trees. This tool leverages phylogenetic infromation to correct for surious associations caused by the relatedness of sister taxa.

This pipeline is designed to:

  • Infer evolutionary parameters for traits (gain/loss rates, time to emergence, ancestral states)
  • Estimate trait co-occurence null models through independent simulation of traits
  • Output statistical results for associations

Getting Started

Installation

Install using Conda:

conda install -c bioconda simphyni

Or using PyPI

pip install simphyni

Or install from source:

git clone https://github.com/jpeyemi/SimPhyNI.git
cd SimPhyNI
pip install .

test installation:

simphyni version

Directory Structure

SimPhyNI/
├── simphyni/               # Core package
│   ├── Simulation/          # Simulation scripts
│   ├── scripts/             # Workflow scripts
│   └── envs/simphyni.yaml   # Conda environment (used in snakemake)
├── conda-recipe/           # Build recipe 
├── snakemake_cluster_files # Cluster configs for Snakemake
└── pyproject.toml

Usage

Run mode (single-run)

simphyni run \
  --tree path/to/tree.nwk \
  --traits path/to/traits.csv \
  --runtype 0 \
  --outdir my_analysis \
  --cores 4 \
  --temp_dir ./temp \
  --min_prev 0.05 \
  --max_prev 0.95 \
  --prefilter \
  --plot

Run mode (batch)

Create a samples.csv file like:

Sample,Tree,Traits,RunType,MinPrev,MaxPrev
run1,tree1.nwk,traits1.csv,0,0.05,0.95
run2,tree2.nwk,traits2.csv,1,0.05,0.90

Then execute:

simphyni run --samples samples.csv --cores 8 --temp_dir ./temp

For all run options:

simphyni run --help

Outputs

Outputs are placed in structured folders in the working directory or specified output directory in the 3-Objects/ subdirectory, including:

  • simphyni_result.csv contianing all tested trait pairs with their infered interaction direction, p-value, and effect size
  • simphyni_object.pkl containinf the completed analysis, parsable with the attached environment (not recommended for large analyses, > 1,000,000 comparisons)
  • heatmap summaries of tested associations if --plot is enabled

Contact

For questions, please open an issue or contact Ishaq Balogun at https://github.com/jpeyemi.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

simphyni-0.1.0.tar.gz (23.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

simphyni-0.1.0-py3-none-any.whl (26.2 kB view details)

Uploaded Python 3

File details

Details for the file simphyni-0.1.0.tar.gz.

File metadata

  • Download URL: simphyni-0.1.0.tar.gz
  • Upload date:
  • Size: 23.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.23

File hashes

Hashes for simphyni-0.1.0.tar.gz
Algorithm Hash digest
SHA256 8ac3ec4e3b2f9dfc1b0f50fe394d730bccff07e26989c04dba0b5243aa89a684
MD5 0cad231b3742d57e2613c2531e6b7c61
BLAKE2b-256 7c53789969eb2d0d857fe9fb8a65e6d440b52a913f71d0a807ceadca6eb001b9

See more details on using hashes here.

File details

Details for the file simphyni-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: simphyni-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 26.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.23

File hashes

Hashes for simphyni-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9dcfde263ee98662b3905908ca490a19eb8a24ef739859d02cd633d2fa8a20fd
MD5 5369d4a2d659e922abf8b3da7d2b3214
BLAKE2b-256 767e112f56fed3b618bda4a51bd5eb1d25b5ddfc6db04840f823cf0a301de20f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page