Skip to main content

Parse paraphase JSONs

Project description

Paraphrase

Parse paraphase JSONs.

Usage

 Usage: paraphrase [OPTIONS]

 Parse paraphase JSONs.

╭─ Options ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ *  --input          -f      FILE  Input JSON files (can be multiple) [required]                                                               │
│ *  --sample         -s      TEXT  Sample names corresponding to input JSON files [required]                                                   │
│    --rules          -r      FILE  Optional YAML file with per-gene classification rules (adds 'status' fields)                                │
│    --skip-keys              TEXT  Comma-separated keys to skip (e.g. region_depth,final_haplotypes)                                           │
│    --genes                  TEXT  Optional comma-separated list of gene names to process                                                      │
│    --output-format  -o      TEXT  Output format: 'json' (default) or 'tsv' [default: json]                                                    │
│    --help                         Show this message and exit.                                                                                 │
╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

Example command:

uv run paraphrase \
    --input test-data/HG002.paraphase.json \
    --input test-data/HG003.paraphase.json \
    --input test-data/HG004.paraphase.json \
    --sample HG002 \
    --sample HG003 \
    --sample HG004 \
    --rules test-data/rules.yaml \
    --genes CFH,CFHR3,f8,GBA,hba,ikbkg,ncf1,neb,opn1lw,pms2,rccx,smn1,strc

Rules YAML (per-gene status classification)

Rules are evaluated per gene. Conditions within a single when mapping are combined with logical AND (all must be true). If multiple rules match, you can provide a status_order to pick the most severe (last wins by order).

Example:

smn1:
  # Optional; defaults to "normal" if omitted
  default_status: normal
  # Optional; defaults to [normal, intermediate, pathological] if omitted
  status_order: [normal, intermediate, pathological]
  rules:
    - status: intermediate
      when:
        smn1_cn: 0
        smn2_cn: { ">=": 4 }
      reason: "SMN1 deleted but SMN2 high"
    - status: pathological
      when:
        smn1_cn: { "<": 2 }
      reason: "SMN1 copy number low"

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

paraphrase-0.2.0.tar.gz (2.1 MB view details)

Uploaded Source

Built Distribution

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

paraphrase-0.2.0-py3-none-any.whl (12.2 kB view details)

Uploaded Python 3

File details

Details for the file paraphrase-0.2.0.tar.gz.

File metadata

  • Download URL: paraphrase-0.2.0.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for paraphrase-0.2.0.tar.gz
Algorithm Hash digest
SHA256 7136efb602b0b29f62c1cdcf20f4140005a607eaac15d9b2b44a4de21fefb0ed
MD5 34a6e2b25804bbc68c7523e567baf72e
BLAKE2b-256 de1df0b3f71454cb13a0074a7048552231e1e5859fe9801f0c82255ee083ed3b

See more details on using hashes here.

File details

Details for the file paraphrase-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: paraphrase-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 12.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for paraphrase-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 081da766217874f26833a074ef311e278361b3e5976824cb27647e09d3350405
MD5 63d23caf037452052a7bf2c1c8804c36
BLAKE2b-256 ae3ba8224b65dff7b80d8576e673478292c8d11a2686083e5e19d425466126ce

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