{ "info": { "author": "Benjamin Wiley, Zhirui(Jerry) Wang, Aaron Wiegel, Pointy Shiny Burning, Harrison", "author_email": "bewi7122@colorado.edu, zw2389@columbia.edu, aawiegel@gmail.com", "bugtrack_url": null, "classifiers": [ "Programming Language :: Python" ], "description": "# pandleau\n\nA quick and easy way to convert a Pandas DataFrame to a Tableau .tde or .hyper extract.\n\n## Getting Started\n\n### Prerequisites\n\n* If you want to output as a .tde format, you'll need to install TableauSDK directly from Tableau's site [here]( https://onlinehelp.tableau.com/current/api/sdk/en-us/help.htm#SDK/tableau_sdk_installing.htm%3FTocPath%3D_____3).\n* If you want to output as a .hyper format, you'll need to install Extract API 2.0 directly from Tableau's site [here](https://onlinehelp.tableau.com/current/api/extract_api/en-us/help.htm#Extract/extract_api_installing.htm%3FTocPath%3D_____3).\n* Although Tableau's site claims Python 3 is not supported, this module is tested to work fully functional on Python 3.6.\n\n### Installing\n\nOnce installing TableauSDK is done, download this repository, navigate to your downloads file and run the following in cmd or terminal: \n```bash\npython -m setup.py install\n```\n\nYou can also install pandleau using pip:\n```bash\npip install pandleau\n```\nBut note that this will throw a warning to install tableausdk using the above link in Prerequisites.\n\n## Example\n\nI grabbed the following Brazil flights data off of kaggle for this example: https://www.kaggle.com/microtang/exploring-brazil-flights-data/data.\n\n```python\nimport pandas as pd\nfrom pandleau import *\n\n# Import the data\nexample_df = pd.read_csv(r'example/BrFlights2.csv', encoding = 'iso-8859-1')\n\n# Format dates in pandas\nexample_df['Partida.Prevista'] = pd.to_datetime(example_df['Partida.Prevista'], format = '%Y-%m-%d')\nexample_df['Partida.Real'] = pd.to_datetime(example_df['Partida.Real'], format = '%Y-%m-%d')\nexample_df['Chegada.Prevista'] = pd.to_datetime(example_df['Chegada.Prevista'], format = '%Y-%m-%d')\nexample_df['Chegada.Real'] = pd.to_datetime(example_df['Chegada.Real'], format = '%Y-%m-%d')\n\n# Set up a spatial column\nexample_df.loc[:, 'SpatialDest'] = example_df['LongDest'].apply( lambda x: \"POINT (\" + str( round(x, 6) ) ) + \\\n\texample_df['LatDest'].apply( lambda x: \" \"+str( round(x, 6) ) + \")\" )\n\n# Change to pandleau object\ndf_tableau = pandleau(example_df)\n\n# Define spatial column\ndf_tableau.set_spatial('SpatialDest', indicator=True)\n\n# Write .tde or .hyper Extract!\ndf_tableau.to_tableau('test.hyper', add_index=False)\n\n```\n\n## Tableau Server/Online Automation\n\nEric Chan ([erickhchan](https://github.com/erickhchan)) wrote a really cool blog post on using Python to blend and clean data before pushing it to Tableau Online (which is a SaaS version of Tableau Server). This is a great way to learn how to automate the data refresh process with Tableau Server Client and Pandleau. Check out his blog post here: https://www.erickhchan.com/data/2019/03/18/python-tableau-server.html\n\n## Authors\n\n* **Benjamin Wiley** - [jamin4lyfe](https://github.com/bwiley1)\n* **Zhirui(Jerry) Wang** - [zhiruiwang](https://github.com/zhiruiwang)\n* **Aaron Wiegel** - [aawiegel](https://github.com/aawiegel)\n* **Pointy Shiny Burning** - [PointyShinyBurning](https://github.com/pointyshinyburning)\n* **Harrison** - [harrison-h](https://github.com/harrison-h)\n\n## Related Project\n\n[RTableau](https://github.com/zhiruiwang/RTableau) Convert R data.frame to Tableau Extract using pandleau\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "https://github.com/bwiley1/pandleau/dist/pandleau-0.4.1.tar.gz", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/bwiley1/pandleau", "keywords": "tableau pandas extract tde hyper", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "pandleau", "package_url": "https://pypi.org/project/pandleau/", "platform": "", "project_url": "https://pypi.org/project/pandleau/", "project_urls": { "Download": "https://github.com/bwiley1/pandleau/dist/pandleau-0.4.1.tar.gz", "Homepage": "https://github.com/bwiley1/pandleau" }, "release_url": "https://pypi.org/project/pandleau/0.4.1/", "requires_dist": [ "pandas", "numpy", "tqdm" ], "requires_python": "", "summary": "A quick and easy way to convert a Pandas DataFrame to a Tableau extract.", "version": "0.4.1" }, "last_serial": 5616324, "releases": { "0.2": [ { "comment_text": "", "digests": { "md5": "4011904b4a4347108219174d4c6686cf", "sha256": "db7bab24aed0175364e58db60bbe71bf3fddab2a8390f455961b3b2b1c7776b8" }, "downloads": -1, "filename": "pandleau-0.2.tar.gz", "has_sig": false, "md5_digest": "4011904b4a4347108219174d4c6686cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3690, "upload_time": "2018-05-01T23:11:42", "url": "https://files.pythonhosted.org/packages/ba/67/7656aab31c386ecf336cb89dca36711cbdb35b656c777c3bb6ccefd43713/pandleau-0.2.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "afe00f5f51fbea3f3e8e0ab248be594b", "sha256": "32a78126766b3c4d93ca9403a9b752dd9eed257e17c65751ae8023a2aa40db70" }, "downloads": -1, "filename": "pandleau-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "afe00f5f51fbea3f3e8e0ab248be594b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4608, "upload_time": "2018-06-19T20:23:19", "url": "https://files.pythonhosted.org/packages/16/75/12c2ca60834828d67ab2d708917adee2591e3854603d3bd241dc57cb7531/pandleau-0.3.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b51a709fd6b8ec98ae087e0143063e5f", "sha256": "815044351522830b72e003ef9f5ad0ce6aaf7c4a15637e1462a9170ecb86ae16" }, "downloads": -1, "filename": "pandleau-0.3.1.tar.gz", "has_sig": false, "md5_digest": "b51a709fd6b8ec98ae087e0143063e5f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4320, "upload_time": "2018-06-19T20:23:20", "url": "https://files.pythonhosted.org/packages/a2/49/f25c95bef83af7af520d6ca5308a51fa3aa33b3d4d206858523d51cd0bf9/pandleau-0.3.1.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "14d19126e9ca001135762bfe8cd9a8e8", "sha256": "89a81ec6a592cd5ae280b9ab9885f0017d83fcf40ce8ce83e9553f8c9b897c43" }, "downloads": -1, "filename": "pandleau-0.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "14d19126e9ca001135762bfe8cd9a8e8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6186, "upload_time": "2019-08-01T01:57:55", "url": "https://files.pythonhosted.org/packages/4c/5b/a1b8843ebec0dd687bc969b3f4ed9579c38e9ef3d02b0e5c635929f605fc/pandleau-0.4.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f309c3d6934f60f0ac9454f732cb02d5", "sha256": "1a008b54f3677d87836d3325c14b9e540eb06c4810baa3dff9edd40bc4423711" }, "downloads": -1, "filename": "pandleau-0.4.1.tar.gz", "has_sig": false, "md5_digest": "f309c3d6934f60f0ac9454f732cb02d5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5115, "upload_time": "2019-08-01T01:57:57", "url": "https://files.pythonhosted.org/packages/bc/bc/3c8b67c272ed8c250e53f95a42f46132a9a4c08ecfb80f366e8396329695/pandleau-0.4.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "14d19126e9ca001135762bfe8cd9a8e8", "sha256": "89a81ec6a592cd5ae280b9ab9885f0017d83fcf40ce8ce83e9553f8c9b897c43" }, "downloads": -1, "filename": "pandleau-0.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "14d19126e9ca001135762bfe8cd9a8e8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6186, "upload_time": "2019-08-01T01:57:55", "url": "https://files.pythonhosted.org/packages/4c/5b/a1b8843ebec0dd687bc969b3f4ed9579c38e9ef3d02b0e5c635929f605fc/pandleau-0.4.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f309c3d6934f60f0ac9454f732cb02d5", "sha256": "1a008b54f3677d87836d3325c14b9e540eb06c4810baa3dff9edd40bc4423711" }, "downloads": -1, "filename": "pandleau-0.4.1.tar.gz", "has_sig": false, "md5_digest": "f309c3d6934f60f0ac9454f732cb02d5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5115, "upload_time": "2019-08-01T01:57:57", "url": "https://files.pythonhosted.org/packages/bc/bc/3c8b67c272ed8c250e53f95a42f46132a9a4c08ecfb80f366e8396329695/pandleau-0.4.1.tar.gz" } ] }