{
"info": {
"author": "Lars Schoening",
"author_email": "lays@biosustain.dtu.dk",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 4 - Beta",
"Environment :: Other Environment",
"Intended Audience :: Developers",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3",
"Topic :: Scientific/Engineering :: Bio-Informatics"
],
"description": ".. |travis| image:: https://travis-ci.org/biosustain/co.svg\n.. _travis: https://travis-ci.org/biosustain/co\n\nCo\n==\n\n|travis|_\n\n**Co** is a Python library for altering annotated DNA sequences. It keeps track of components and lifts\nover feature annotations when a component is \"mutated\" by applying a series of mutations. With ``co`` you can\nbuild new consensus sequences for cloned organisms and trace changes to features within a lineage.\n\nFor more information, check out the `Documentation `_.\n\nHello Co!\n---------\n\n::\n\n >>> from co import Component\n >>> from co.mutation import *\n >>> hello = Component('Hello X!')\n >>> hello.seq\n Seq('Hello X!', Alphabet())\n >>> hello_world = hello.mutate([Mutation(6, 1, 'world')])\n >>> hello_world.seq\n Seq('Hello world!', Alphabet())\n\n\n\nWorking with Feature Annotations\n--------------------------------\n\nComponents are modeled after BioPython's ``SeqRecord`` -- they have both a sequence, and features:\n\n.. code-block:: python\n\n >>> from Bio.SeqFeature import *\n >>> slogan = Component('CoPy is for DNA components', features=[\n ... SeqFeature(FeatureLocation(0, 4), type='name'),\n ... SeqFeature(FeatureLocation(12, 15), id='DNA')])\n >>>\n >>> # features are bound to components -- and you can always access their DNA sequence\n ...\n >>> slogan.features.add(FeatureLocation(16, 26)).seq\n Seq('components', Alphabet())\n >>> [f.seq for f in slogan.features]\n [Seq('CoPy', Alphabet()), Seq('DNA', Alphabet()), Seq('components', Alphabet())]\n >>>\n >>> # New Components are made through series of mutations\n ... # You not only get the new sequence but a mutated component: Features are translated to the\n ... # new sequence as well.\n ...\n >>> new_slogan = slogan.mutate([DEL(2, 2), DEL(12, 4)])\n >>> new_slogan.seq\n Seq('Co is for components', Alphabet())\n >>> new_slogan.features\n ComponentFeatureSet([Feature(FeatureLocation(ExactPosition(0), ExactPosition(2)), type='name'),\n Feature(FeatureLocation(ExactPosition(10), ExactPosition(20)))])\n >>> [f.seq for f in new_slogan.features]\n [Seq('Co', Alphabet()), Seq('components', Alphabet())]\n >>> list(new_slogan.features.find(type='name')) # features can be filtered by type, id, strand, position, and qualifiers\n [Feature(FeatureLocation(ExactPosition(0), ExactPosition(2)), type='name')]\n >>>\n >>> # Using Component.fdiff you can get a summary of what features where affected by mutation. (Unchanged features\n ... # that have a new coordinate -- e.g. the 'components' feature in this example -- are not included).\n ...\n >>> slogan.fdiff(new_slogan)\n Diff(added=(Feature(FeatureLocation(ExactPosition(12), ExactPosition(15)), id='DNA'),\n Feature(FeatureLocation(ExactPosition(0), ExactPosition(4)), type='name')),\n removed=(Feature(FeatureLocation(ExactPosition(0), ExactPosition(2)), type='name'),))\n\n\nAuthors\n=======\n\n`Lars Sch\u00f6ning `_ has created Co. Contributions are very welcome.\nContact the main author for bigger changes.",
"description_content_type": null,
"docs_url": null,
"download_url": "UNKNOWN",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "http://co.readthedocs.org/en/latest/",
"keywords": null,
"license": "MIT",
"maintainer": null,
"maintainer_email": null,
"name": "co",
"package_url": "https://pypi.org/project/co/",
"platform": "UNKNOWN",
"project_url": "https://pypi.org/project/co/",
"project_urls": {
"Download": "UNKNOWN",
"Homepage": "http://co.readthedocs.org/en/latest/"
},
"release_url": "https://pypi.org/project/co/0.2.0/",
"requires_dist": null,
"requires_python": null,
"summary": "Python library for making and tracking mutated copies of DNA components",
"version": "0.2.0"
},
"last_serial": 4735500,
"releases": {
"0.1.0": [
{
"comment_text": "",
"digests": {
"md5": "eefe11fc33c3c5ee9b591c6d73b58e67",
"sha256": "82e861beffefa260c69ed4fedd60effd37c343551379f37c9540bde9a8098afb"
},
"downloads": -1,
"filename": "co-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "eefe11fc33c3c5ee9b591c6d73b58e67",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 16330,
"upload_time": "2014-05-27T08:49:45",
"url": "https://files.pythonhosted.org/packages/55/e3/e286117d1b7d4da1f06ae367614af7110a8ce11d7734bf04279552ca3e54/co-0.1.0.tar.gz"
}
],
"0.1.1": [
{
"comment_text": "",
"digests": {
"md5": "c64455968e8e4b2103a8a487ca66bd08",
"sha256": "a2c2de3e28ab88796d3f6606eec1dcea744402b2966ea2907da109d9647c0dcf"
},
"downloads": -1,
"filename": "co-0.1.1.tar.gz",
"has_sig": false,
"md5_digest": "c64455968e8e4b2103a8a487ca66bd08",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 18319,
"upload_time": "2014-05-27T11:49:34",
"url": "https://files.pythonhosted.org/packages/54/25/093319c1027f9857102fbb6d7bd451d915b5632f479fb3220f0cb66313d5/co-0.1.1.tar.gz"
}
],
"0.1.2": [
{
"comment_text": "",
"digests": {
"md5": "62a88b45451ffba046d3224ef71f7437",
"sha256": "a93799dc9115ce95d5ae62473d7d444ac556896bfdecb4ad49277e152608007f"
},
"downloads": -1,
"filename": "co-0.1.2.tar.gz",
"has_sig": false,
"md5_digest": "62a88b45451ffba046d3224ef71f7437",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 18402,
"upload_time": "2015-02-16T11:06:15",
"url": "https://files.pythonhosted.org/packages/99/67/4c87f5e15faa485474601ad2a740a8479ddb2286f3f89734575b1f97079a/co-0.1.2.tar.gz"
}
],
"0.2.0": [
{
"comment_text": "",
"digests": {
"md5": "c2215c60ae22e026b48f97e5847c3038",
"sha256": "ec9095b71f096b0c2fbf00d2be237746863d1fc644f070b894ab7acc95e76e94"
},
"downloads": -1,
"filename": "co-0.2.0.tar.gz",
"has_sig": false,
"md5_digest": "c2215c60ae22e026b48f97e5847c3038",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 17209,
"upload_time": "2015-02-23T10:53:47",
"url": "https://files.pythonhosted.org/packages/b3/13/a18b01f8e530f44841a8537ac91e5f47493a4e5f661dfbb8dcca65a951de/co-0.2.0.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "c2215c60ae22e026b48f97e5847c3038",
"sha256": "ec9095b71f096b0c2fbf00d2be237746863d1fc644f070b894ab7acc95e76e94"
},
"downloads": -1,
"filename": "co-0.2.0.tar.gz",
"has_sig": false,
"md5_digest": "c2215c60ae22e026b48f97e5847c3038",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 17209,
"upload_time": "2015-02-23T10:53:47",
"url": "https://files.pythonhosted.org/packages/b3/13/a18b01f8e530f44841a8537ac91e5f47493a4e5f661dfbb8dcca65a951de/co-0.2.0.tar.gz"
}
]
}