Skip to main content

NGLessPy: Python interface to NGLess

Project description

NGLessPy: NGLess as a Python Embedded Language

This is a variation of NGLess as an embedded language in Python, thus enabling processing of next generation data through a Python API. See the example below.

Build Status MIT licensed Join the chat at https://gitter.im/luispedro/ngless

This is very experimental and can change at any time. Please get in touch if you want to use it in your work. For questions, you can also use the ngless mailing list.

Dependencies

NGLesspy can auto-install ngless if it needs to.

NGLesspy is compatible with Python 2.7 and 3.4+.

Example

Inside the bin/ directory, you will find several simple scripts exposing NGLess functionality as command line tools. These are also simple examples of how NGLessPy can be used.

See the tutorial for a more thorough explanation of what is going on in the example below.

    from ngless import NGLess

    sc = NGLess.NGLess('0.8')

    sc.import_('mocat', '0.0')
    e = sc.env

    e.sample = sc.load_mocat_sample_('testing')

    @sc.preprocess_(e.sample, using='r')
    def proc(bk):
        bk.r = sc.substrim_(bk.r, min_quality=25)

    e.mapped = sc.map_(e.sample, reference='hg19')
    e.mapped = sc.select_(e.mapped, keep_if=['{mapped}'])

    sc.write_(e.mapped, ofile='ofile.sam')

    sc.run()

This is equivalent to the NGLess script

ngless '0.8'
import 'mocat' version '0.0'

sample = load_mocat_sample('testing')

preprocess_(sample) using='r':
    r = substrim(r, min_quality=25)

mapped = map(sample, reference='hg19')
mapped = select(mapped, keep_if=[{mapped}])

write(mapped, ofile='ofile.sam')

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

NGLessPy-0.2.2.tar.gz (11.1 kB view details)

Uploaded Source

File details

Details for the file NGLessPy-0.2.2.tar.gz.

File metadata

  • Download URL: NGLessPy-0.2.2.tar.gz
  • Upload date:
  • Size: 11.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for NGLessPy-0.2.2.tar.gz
Algorithm Hash digest
SHA256 42e3e5df393209c3e55d8d9d6e7b0ec20a20e391a43ff8add054a98bcec50290
MD5 41e150af27c4b917e18d91b46d03205e
BLAKE2b-256 701a96757923b90d659189e9bfbc9ff3a86a0799664ef7029cf275ab708ffc4f

See more details on using hashes here.

Supported by

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