{"id":13468459,"url":"https://github.com/dovpanda-dev/dovpanda","last_synced_at":"2025-03-26T05:31:08.493Z","repository":{"id":35179951,"uuid":"216183951","full_name":"dovpanda-dev/dovpanda","owner":"dovpanda-dev","description":"Directions overlay for working with pandas in an analysis environment","archived":false,"fork":false,"pushed_at":"2024-12-01T19:27:29.000Z","size":494,"stargazers_count":477,"open_issues_count":29,"forks_count":22,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-03-02T10:46:10.330Z","etag":null,"topics":["analysis-environment","overlay","pandas"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dovpanda-dev.png","metadata":{"files":{"readme":"README.md","changelog":"HISTORY.rst","contributing":"CONTRIBUTING.rst","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.rst","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-10-19T09:51:06.000Z","updated_at":"2025-02-18T22:36:38.000Z","dependencies_parsed_at":"2023-01-16T22:25:02.179Z","dependency_job_id":"ee936016-490c-4fa7-9f8e-95eab0621c1f","html_url":"https://github.com/dovpanda-dev/dovpanda","commit_stats":{"total_commits":180,"total_committers":9,"mean_commits":20.0,"dds":0.4,"last_synced_commit":"51ff702094892573632753d3debf4974b8189eb3"},"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dovpanda-dev%2Fdovpanda","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dovpanda-dev%2Fdovpanda/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dovpanda-dev%2Fdovpanda/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dovpanda-dev%2Fdovpanda/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dovpanda-dev","download_url":"https://codeload.github.com/dovpanda-dev/dovpanda/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245597240,"owners_count":20641861,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["analysis-environment","overlay","pandas"],"created_at":"2024-07-31T15:01:11.336Z","updated_at":"2025-03-26T05:31:07.453Z","avatar_url":"https://github.com/dovpanda-dev.png","language":"Python","readme":"\u003ch1\u003e\u003cimg src=\"https://github.com/dovpanda-dev/dovpanda/blob/master/img/logo.png\" alt=\"logo\" width=\"100\"\u003e dovpanda \u003c/h1\u003e\n\n\n[![pypi](https://img.shields.io/pypi/v/dovpanda.svg)](https://pypi.python.org/pypi/dovpanda)\n[![Build Status](https://travis-ci.org/dovpanda-dev/dovpanda.svg?branch=master)](https://travis-ci.org/dovpanda-dev/dovpanda)\n[![Documentation Status](https://readthedocs.org/projects/dovpanda/badge/?version=latest)](https://dovpanda.readthedocs.io/en/latest/?badge=latest)\n[![Updates](https://pyup.io/repos/github/dovpanda-dev/dovpanda/shield.svg)](https://pyup.io/repos/github/dovpanda-dev/dovpanda/)\n![python3](https://pyup.io/repos/github/dovpanda-dev/dovpanda/python-3-shield.svg?t=1572213773477)\n[![license](https://img.shields.io/pypi/l/pandas.svg)](https://github.com/dovpanda-dev/dovpanda/blob/master/LICENS)  \n[![Downloads](https://pepy.tech/badge/dovpanda)](https://pepy.tech/project/dovpanda)\n\n\n## Directions OVer PANDAs\n\nDirections are hints and tips for using pandas in an analysis environment.\ndovpanda is an overlay companion for working with pandas in an analysis environment.  \nIt is an overlay module that tries to understand what you are trying to do with your data, and helps you\nmake you code more concise with readable.  \nIf you think your task is common enough, it probably is, and pandas probably has a built-in solution. dovpanda will help you find them.\n\n## Usage\n\n### Hints\nThe main usage of `dovpanda` is its hints mechanism, which is very easy and works out-of-the-box.\nJust import it after you import pandas, whether inside a notebook or in a console.\n\n```python\nimport pandas as pd\nimport dovpanda\n```     \nThis is it. From now on you can expect `dovpanda` to come up with helpful hints while you are writing your code.\n\n### Notebook\nRunning `dovpanda` in a notebook environment will display rendered dismissable html.  \n![random tip](https://github.com/dovpanda-dev/dovpanda/blob/master/img/readme_example.png)\n\n### Console\n```python\ndf = pd.DataFrame({'a':list('xxyy'),'b':[40,50,60,70], 'time':['18:02','18:45','20:12','21:50']})\ndf['time'] = pd.to_datetime(df.time)\ndf['hour'] = df.time.dt.hour\ndf.groupby('hour').b.sum()\n```\n```\n===== Seems like you are grouping by a column named 'hour', consider setting the your\ntime column as index and then use df.resample('h') =====\nOut[4]:\nhour\n18    90\n20    60\n21    70\nName: b, dtype: int64\n```\n\n## Installation\n```bash\npip install dovpanda\n```\n\n\n\n\n## Extended Usage\n### Random Tips\n`dovpanda.tip()` will give you a random `pandas` tip.  \n![random tip](https://github.com/dovpanda-dev/dovpanda/blob/master/img/readme_tip.png)\n\n### Change Display\nuse `dovpanda.set_output` if you want to change output.\n\n```\nIn [14]: dovpanda.set_output('display')\nIn [15]: df.iterrows()\n===== iterrows is not recommended, and in the majority of cases will have better alternatives =====\nOut[15]: \u003cgenerator object DataFrame.iterrows at 0x110fe4318\u003e\n\nIn [16]: dovpanda.set_output('print')\nIn [17]: df.iterrows()\niterrows is not recommended, and in the majority of cases will have better alternatives\nOut[17]: \u003cgenerator object DataFrame.iterrows at 0x112c408b8\u003e\n\nIn [18]: dovpanda.set_output('warning')\nIn [19]: df.iterrows()\nWARNING:dovpanda:iterrows is not recommended, and in the majority of cases will have better alternatives\nOut[19]: \u003cgenerator object DataFrame.iterrows at 0x110ee7e58\u003e\n\nIn [20]: dovpanda.set_output('off')\n\nIn [21]: df.iterrows()\nOut[21]: \u003cgenerator object DataFrame.iterrows at 0x1047c4d68\u003e\n\n```\n\n\u003chr\u003e \n\n#### BTW\n\n\"dov\" means bear in Hebrew \u003cimg src=\"https://github.com/dovpanda-dev/dovpanda/blob/master/img/logo.png\" alt=\"logo\" width=\"15\"\u003e\n\n\n","funding_links":[],"categories":["Python","Data Manipulation"],"sub_categories":["Pipelines"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdovpanda-dev%2Fdovpanda","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdovpanda-dev%2Fdovpanda","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdovpanda-dev%2Fdovpanda/lists"}