Skip to main content

A python package for downloading and processing RRBS DNA methylation data.

Project description

bs-cpg

This is the main documentation homepage for bs-cpg. For comprehensive module-specific documentation, API references, and examples, see the sections below. For development guidance, see the Developer Guide.

Module Documentation

Detailed documentation for each module is available in separate notebooks:

Quick Start

Basic Workflow Example

Here’s a simple workflow to get started with bs-cpg:

from bs_cpg.setup import read_sample_cpg, get_base_data_path
from bs_cpg.liftover_ps import cpg_reads, cpg_percent, liftover_positions

# 1. Load sample CpG data
df = read_sample_cpg(["chromosome", "pos"])

# 2. Validate CpG sites
reads = cpg_reads(df["chromosome"], df["pos"], "hg19", index_base=1)
percent_valid = cpg_percent(reads)
print(f"Valid CpG sites: {percent_valid:.1f}%")

# 3. Perform liftover to hg38
new_chroms, new_pos = liftover_positions(
    chromosomes=df["chromosome"],
    positions=df["pos"],
    genome_from="hg19",
    genome_to="hg38",
    index_base_from=1,
    index_base_to=1
)

Installation & Setup

Installation

Install latest from the GitHub repository:

$ pip install git+https://github.com/magistak/bs-cpg.git

or from pypi

$ pip install bs_cpg

Note: Ensure you have htslib (specifically bgzip) installed and in your PATH for reference genome processing.

Documentation

Documentation can be found hosted on this GitHub repository’s pages. Package releases are available on pypi.

from bs_cpg.download_processed import Geofetcher
geo = Geofetcher(just_metadata=True)
projects = geo.get_projects('GSE51239')
2

Liftover & Validation (bs_cpg.liftover_ps)

Perform genomic liftover while explicitly handling 0-based or 1-based indexing:

from bs_cpg.liftover_ps import liftover_positions
new_chroms, new_pos = liftover_positions(
    chromosomes=["chr1"], 
    positions=[100001], 
    genome_from="hg19", 
    genome_to="hg38", 
    index_base_from=1
)

You can also validate CpG site integrity using cpg_percent(reads).

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

bs_cpg-0.0.2.tar.gz (18.8 kB view details)

Uploaded Source

Built Distribution

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

bs_cpg-0.0.2-py3-none-any.whl (17.8 kB view details)

Uploaded Python 3

File details

Details for the file bs_cpg-0.0.2.tar.gz.

File metadata

  • Download URL: bs_cpg-0.0.2.tar.gz
  • Upload date:
  • Size: 18.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for bs_cpg-0.0.2.tar.gz
Algorithm Hash digest
SHA256 27e0fc43eb9d8f90734864ba1a885fa2608362ccf5969f992ef932ecabfcbc83
MD5 116de9be8a94e700f4530bd691d0062d
BLAKE2b-256 39683f9e399b2870a136654ca5b8229ddfd30b948396e59d48108f8bfd6406ae

See more details on using hashes here.

File details

Details for the file bs_cpg-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: bs_cpg-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 17.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for bs_cpg-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ce6a51266c0238258acba0588ce84dda4bb499213e770b0482005a5063e2a0b9
MD5 a0092e6d0dcc45b3269c5ddc124678d5
BLAKE2b-256 2d1a4d57eb3952920e00661bb9188c5639a06799e6fc61fb61b1afbf35eb31d1

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