Skip to main content

No project description provided

Project description

PLINKFORMMATER

This repository is designed to transform genotype data from the Muster SNPs/download endpoint into PLINK-compatible data, which can then be processed by PyLMM. The primary aim is to facilitate genomic data transformation for linear mixed models. This tool should, in theory, also work with GEMMA and other software that consumes standard PLINK file formats, though it has been primarily tested with PyLMM.

Getting Started

Prerequisites

To use this repository, you must have the following dependencies installed:

  • Python 3.8 or above
  • PLINK 2.0
  • Poetry

Install dependencies:

poetry install

Activate virtual environment:

poetry shell

Install PLINK:

You can download PLINK from the official website. Ensure the PLINK executable is in your system's PATH, or you can specify the path to the PLINK binary in your environment settings.

To verify PLINK installation, run:

plink2 --version

Tests

To run tests run the following command:

pytest -s tests

Publishing to Pypi

  1. Update version
poetry version patch
  1. Build any changes
poetry build
  1. Set the correct PyPI repository URL
poetry config repositories.pypi https://upload.pypi.org/legacy/
  1. Set API token
poetry config pypi-token.pypi pypi-YourActualTokenHere
  1. Publish
poetry publish

TODO

Software decisions

  • [] operating on measure directory is inferior pattern than operating on a list of MeasureInput dataclass objects. MeasureInputs have a localfile attribute thus they could exist in any folder it wouldn't matter. this also prevents the need for creating an unecessary measure_id folder.

Differences from Hao's R code:

  • [o] confirm 40701 results match

  • [o] confirm 45912 results match

    • [] double check pylmm kinship function is being used?
    • double check plink version
    • .pheno matches within error
    • [o] .kin does not match?? Comparing kinship files... Hao kin shape: (838, 838) My kin shape: (838, 838) max |Δ| = 0.8028899342158409 mean |Δ| = 0.003146552441518657 Frobenius Δ = 17.949248701353486 allclose? = False (rtol=1e-06, atol=1e-08) Largest discrepancies at (i,j): (623, 633): hao=-0.03728288973450879 mine=0.7656070444813321 Δ=0.8028899342158409 (641, 632): hao=0.7656070444813321 mine=-0.03728288973450879 Δ=0.8028899342158409 (641, 631): hao=0.7656070444813321 mine=-0.03728288973450879 Δ=0.8028899342158409 (640, 633): hao=0.7656070444813321 mine=-0.03728288973450879 Δ=0.8028899342158409 (640, 631): hao=0.7656070444813321 mine=-0.03728288973450879 Δ=0.8028899342158409 (640, 632): hao=0.7656070444813321 mine=-0.03728288973450879 Δ=0.8028899342158409 (620, 633): hao=-0.03728288973450879 mine=0.7656070444813321 Δ=0.8028899342158409 (625, 631): hao=-0.03728288973450879 mine=0.7656070444813321 Δ=0.8028899342158409 (625, 632): hao=-0.03728288973450879 mine=0.7656070444813321 Δ=0.8028899342158409 (625, 633): hao=-0.03728288973450879 mine=0.7656070444813321 Δ=0.8028899342158409
  • confirm 45911 results match

  • Sanity check: Are Hao and I using the exact same measure files?

  • [] Sanity check: that I am using same ped & map files, because how are our kinship matrices different if we are using the same pylmm kinship function?

  • [] Double check that DO pathway still works even with code changes.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

plinkformatter-0.1.77.tar.gz (17.8 kB view details)

Uploaded Source

Built Distribution

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

plinkformatter-0.1.77-py3-none-any.whl (20.0 kB view details)

Uploaded Python 3

File details

Details for the file plinkformatter-0.1.77.tar.gz.

File metadata

  • Download URL: plinkformatter-0.1.77.tar.gz
  • Upload date:
  • Size: 17.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.9.13 Windows/10

File hashes

Hashes for plinkformatter-0.1.77.tar.gz
Algorithm Hash digest
SHA256 7e0f78e5cb498b6636fa3e8e8d855eaa00b882087698c6fcb09e1548425d3735
MD5 f54e615e3a5e9232fc6b17fd220ec954
BLAKE2b-256 12ae54a8cb406be4681566343037f55741195eca97bab02254443d79d287c8ef

See more details on using hashes here.

File details

Details for the file plinkformatter-0.1.77-py3-none-any.whl.

File metadata

  • Download URL: plinkformatter-0.1.77-py3-none-any.whl
  • Upload date:
  • Size: 20.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.9.13 Windows/10

File hashes

Hashes for plinkformatter-0.1.77-py3-none-any.whl
Algorithm Hash digest
SHA256 58c81760340f9d6202044b73a7dbe160812324ad8e4642505fb08fa23ac2d530
MD5 4e35d91c813e0089e3e9be4362fbb9d4
BLAKE2b-256 72e6de6d1e676102c6318f12b831ee6d93f42c3981b833f928291c299cd7344f

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