Metadata-Version: 2.2
Name: genomediff
Version: 0.4.0
Summary: GenomeDiff (*.gd) file reader
Author-email: Jeffrey Barrick <jeffrey.e.barrick@gmail.com>
License: MIT
Project-URL: Homepage, https://github.com/barricklab/genomediff-python
Project-URL: Repository, https://github.com/barricklab/genomediff-python.git
Project-URL: Issues, https://github.com/barricklab/genomediff-python/issues
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Other Environment
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Requires-Python: >=3.0
Description-Content-Type: text/x-rst
License-File: LICENSE

genomediff-python
=================

**genomediff-python** parses files in the
`GenomeDiff format <http://barricklab.org/twiki/pub/Lab/ToolsBacterialGenomeResequencing/documentation/gd_format.html>`_
generated by the `breseq <http://barricklab.org/twiki/pub/Lab/ToolsBacterialGenomeResequencing/documentation/index.html>`_
variant caller for haploid microbial organisms.


Installation
------------

::

    python setup.py install


Only Python 3.x is tested.

Usage
-----

GenomeDiff files are read using ``GenomeDiff.read(file)``. The ``GenomeDiff`` object contains a ``metadata`` dict with
the metadata, as well as ``mutations``, ``evidence`` and ``validation`` lists—each containing records of that type.
Records can be accessed through this list or by id. ``GenomeDiff`` is iterable and iterating will return all records of all types.

::

    >>> from genomediff import *
    >>> document = GenomeDiff.read(open('MyDiff.gd', 'r', encoding='utf-8'))
    >>> document.metadata
    {'GENOME_DIFF': '1.0', 'AUTHOR': ''}
    >>> document.mutations[0]
    Record('SNP', 1, [191], new_seq='A', seq_id='NC_000913', snp_type='intergenic',  position=12346)
    >>> document.mutations[0].parent_ids
    [191]
    >>> document[191]
    Record('RA', 191, None, tot_cov='46/42', new_base='A', insert_position=0, ref_base='G', seq_id='NC_000913', quality=252.9, position=12345)
    >>> document.mutations[0].parents
    [Record('RA', 191, None, tot_cov='46/42', new_base='A', insert_position=0, ref_base='G', seq_id='NC_000913', quality=252.9, position=12345)]
    >>> document.write(open('NewDiff.gd', 'w', encoding='utf-8'))
