{ "info": { "author": "Faraz Yashar", "author_email": "faraz.yashar@gmail.com", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "Programming Language :: Python :: 3", "Topic :: Software Development", "Topic :: Utilities" ], "description": "The Curator \ud83d\uddbc\n==============\n\n.. image:: https://travis-ci.org/fny/thecurator.svg?branch=master\n :target: https://travis-ci.org/fny/thecurator\n :alt: Build Status\n\n.. image:: https://badge.fury.io/py/thecurator.svg\n :target: https://pypi.org/project/thecurator\n :alt: The Curator on PyPI\n\n\nThe Curator helps you define pipelines for transforming dirty data into consumable databases.\n\nUsage\n-----\n\n.. code:: python\n\n from thecurator import Curator\n\n # Paths to files describing different tables\n table_descriptions = ['patient.yml', 'lab.yml']\n curator = Curator(sqlalchemy_engine, table_descriptions)\n\n # Transform a pandas DataFrame according to the descriptions\n curator.transform_df('patient', patient_df)\n\n # Transform a dictionary array according to the descriptions\n curator.transform_dicts('patient', patient_dicts)\n\n # Transform and insert a dictionary array according to the descriptions\n curator.insert_dicts('lab', lab_dicts)\n\n\nSee the tests for more examples. More coming soon...\n\nDevelopment\n-----------\n\n - Install development requirements `pip install -r dev-requirements.txt`\n - Make changes\n - Run the tests `pytest tests`\n - See the Makefile for other useful commands\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/fny/thecurator", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "thecurator", "package_url": "https://pypi.org/project/thecurator/", "platform": "", "project_url": "https://pypi.org/project/thecurator/", "project_urls": { "Homepage": "https://github.com/fny/thecurator" }, "release_url": "https://pypi.org/project/thecurator/0.2.1/", "requires_dist": [ "jsonschema", "pyaml", "sqlalchemy", "dateparser; extra == 'dev'", "pandas; extra == 'dev'", "pytest; extra == 'dev'" ], "requires_python": "", "summary": "", "version": "0.2.1" }, "last_serial": 4653977, "releases": { "0.1.2": [ { "comment_text": "", "digests": { "md5": "2cab0f503d3a66b4a050aabcbee26977", "sha256": "98e5e20cfa1031c68abbc3bc66289bba800ee55a3b3b2de16b2d4ebf246f1456" }, "downloads": -1, "filename": "thecurator-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "2cab0f503d3a66b4a050aabcbee26977", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7174, "upload_time": "2018-03-27T11:59:36", "url": "https://files.pythonhosted.org/packages/11/5f/9972e647a385315004c05383fd8289f62d915fc71275290597e7bdf9e423/thecurator-0.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "de27bdde260bb5e9bed214bf799d8e0f", "sha256": "6ee17f04959c5eeb1a63d7539a9883f69140eeb4520ca48d37af20582ad3686e" }, "downloads": -1, "filename": "thecurator-0.1.2.tar.gz", "has_sig": false, "md5_digest": "de27bdde260bb5e9bed214bf799d8e0f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5123, "upload_time": "2018-03-27T11:59:37", "url": "https://files.pythonhosted.org/packages/3a/ac/657ed550639a2460789a01cc9909b5dcfeb39352ee693c7fc715d17e5f17/thecurator-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "23fe0b29a7a3ff55f969aa542b368d1d", "sha256": "f372b4bec9702a468db7fdfc9a316d7c1d13af49131b3de2dac72a0c3176c061" }, "downloads": -1, "filename": "thecurator-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "23fe0b29a7a3ff55f969aa542b368d1d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7172, "upload_time": "2018-03-27T12:10:37", "url": "https://files.pythonhosted.org/packages/3f/fc/a07460cdb56b708360e7225248e66e5640d86db90ffd3011e2f38e22b81b/thecurator-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c74c0cde6e7d87d6fa3bed40d766cca5", "sha256": "0ee4ea1e835973a7127bcbd0f34ccc41ebe1d097369c2e8efc3a4b1c8141436a" }, "downloads": -1, "filename": "thecurator-0.1.3.tar.gz", "has_sig": false, "md5_digest": "c74c0cde6e7d87d6fa3bed40d766cca5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5118, "upload_time": "2018-03-27T12:10:38", "url": "https://files.pythonhosted.org/packages/b3/e1/473b054cbd4a864d5cea8a99c1f93901654b5294244179f54bcd1a67447a/thecurator-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "b0e491c16940a6e9588a16cc2a205cf1", "sha256": "b3260ade8a446981b86d08e0a7335fe3ce6544a81fc542ffd55edbd5a0719d2f" }, "downloads": -1, "filename": "thecurator-0.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "b0e491c16940a6e9588a16cc2a205cf1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7207, "upload_time": "2018-06-25T16:26:20", "url": "https://files.pythonhosted.org/packages/87/19/928575fc56ab9aebcefd7f386b07c20ce4a059bbe1f7ee98d1d40486f228/thecurator-0.1.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "93dad4aa2e7b2feca54f56c5d4621938", "sha256": "7bc990a205588c630d7998716331a63b3368bd8b65f5810a172c81fd7887381c" }, "downloads": -1, "filename": "thecurator-0.1.4.tar.gz", "has_sig": false, "md5_digest": "93dad4aa2e7b2feca54f56c5d4621938", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5108, "upload_time": "2018-06-25T16:26:21", "url": "https://files.pythonhosted.org/packages/98/03/46ba6a5e11c70f12b3fad7fa94728ec36c71a5dae9c98010c605703177c3/thecurator-0.1.4.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "285950b5a48c27d9d7d1ed3e000c9b3e", "sha256": "cc5687d034d0db9ba2d915e13490ae7a0c7ac47756ac4864d02f454e71dab85f" }, "downloads": -1, "filename": "thecurator-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "285950b5a48c27d9d7d1ed3e000c9b3e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7220, "upload_time": "2018-08-06T16:02:18", "url": "https://files.pythonhosted.org/packages/11/5d/b8e1f1e88b4bec2909acd47e238f557ff1740a5b8a5adba82315e2315575/thecurator-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3f6472768fc1b60e6a970e0d5c98915c", "sha256": "3688be76408fdfcd7336482181327f2e377c0761593dc3aec20b8e9c109ca7ba" }, "downloads": -1, "filename": "thecurator-0.2.0.tar.gz", "has_sig": false, "md5_digest": "3f6472768fc1b60e6a970e0d5c98915c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5124, "upload_time": "2018-08-06T16:02:18", "url": "https://files.pythonhosted.org/packages/94/d3/08992733f03dd71443009bd33eaf4c18874206fd7d88d0e966bfb6db6e27/thecurator-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "dfd0d2e4fbc11fead92121b6938f7bc3", "sha256": "7b1c2b90a6c76b6760d31bf19d1b0811561a67aa1d36a783796cd26c4b287eab" }, "downloads": -1, "filename": "thecurator-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "dfd0d2e4fbc11fead92121b6938f7bc3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7219, "upload_time": "2019-01-02T20:17:38", "url": "https://files.pythonhosted.org/packages/e4/cb/a79ae7a4d8c6a65701e21789b9d4f8d4c81214c5b76c04a20164ab34be0f/thecurator-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "418cb75f49f5d2b2594a0c761795e6a4", "sha256": "170da25b86b7e406b7bafd88f9dc8538220dadd30648625fa89e66612b7026b4" }, "downloads": -1, "filename": "thecurator-0.2.1.tar.gz", "has_sig": false, "md5_digest": "418cb75f49f5d2b2594a0c761795e6a4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5700, "upload_time": "2019-01-02T20:17:39", "url": "https://files.pythonhosted.org/packages/cb/3c/8bd8e38ad3f1d7d898248e0f9be87210717da385f3d8c295bd77f1bd6de6/thecurator-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "dfd0d2e4fbc11fead92121b6938f7bc3", "sha256": "7b1c2b90a6c76b6760d31bf19d1b0811561a67aa1d36a783796cd26c4b287eab" }, "downloads": -1, "filename": "thecurator-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "dfd0d2e4fbc11fead92121b6938f7bc3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7219, "upload_time": "2019-01-02T20:17:38", "url": "https://files.pythonhosted.org/packages/e4/cb/a79ae7a4d8c6a65701e21789b9d4f8d4c81214c5b76c04a20164ab34be0f/thecurator-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "418cb75f49f5d2b2594a0c761795e6a4", "sha256": "170da25b86b7e406b7bafd88f9dc8538220dadd30648625fa89e66612b7026b4" }, "downloads": -1, "filename": "thecurator-0.2.1.tar.gz", "has_sig": false, "md5_digest": "418cb75f49f5d2b2594a0c761795e6a4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5700, "upload_time": "2019-01-02T20:17:39", "url": "https://files.pythonhosted.org/packages/cb/3c/8bd8e38ad3f1d7d898248e0f9be87210717da385f3d8c295bd77f1bd6de6/thecurator-0.2.1.tar.gz" } ] }