{"id":19874182,"url":"https://github.com/pythoninthegrass/pandas_meetup","last_synced_at":"2025-03-01T01:23:12.210Z","repository":{"id":60231642,"uuid":"541840724","full_name":"pythoninthegrass/pandas_meetup","owner":"pythoninthegrass","description":"Combines Pandas, Docker, Jupyter, and Typer for a nice package","archived":false,"fork":false,"pushed_at":"2023-03-11T17:02:00.000Z","size":4754,"stargazers_count":1,"open_issues_count":4,"forks_count":2,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-01-11T16:50:28.560Z","etag":null,"topics":["docker","jupyter","pandas","python","typer"],"latest_commit_sha":null,"homepage":"https://www.meetup.com/pythonistas/events/288741824","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pythoninthegrass.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["pythoninthegrass"]}},"created_at":"2022-09-27T00:39:38.000Z","updated_at":"2022-09-30T20:55:29.000Z","dependencies_parsed_at":"2024-11-12T16:22:45.014Z","dependency_job_id":"ae4c7733-e0b0-4197-9c4d-6198ba9d0090","html_url":"https://github.com/pythoninthegrass/pandas_meetup","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":"pythoninthegrass/python_template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pythoninthegrass%2Fpandas_meetup","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pythoninthegrass%2Fpandas_meetup/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pythoninthegrass%2Fpandas_meetup/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pythoninthegrass%2Fpandas_meetup/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pythoninthegrass","download_url":"https://codeload.github.com/pythoninthegrass/pandas_meetup/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241301848,"owners_count":19940719,"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":["docker","jupyter","pandas","python","typer"],"created_at":"2024-11-12T16:22:08.871Z","updated_at":"2025-03-01T01:23:12.192Z","avatar_url":"https://github.com/pythoninthegrass.png","language":"Jupyter Notebook","readme":"# pandas_meetup\n\n![Meetup Photo](img/eats_shoots_and_leaves.png)\n\n## Summary\nPandas 101 with a smattering of DevOps and TUI\n\n**Table of Contents**\n* [pandas_meetup](#pandas_meetup)\n  * [Summary](#summary)\n  * [Setup](#setup)\n  * [Usage](#usage)\n    * [Poetry](#poetry)\n    * [Docker](#docker)\n    * [Both](#both)\n  * [TODO](#todo)\n  * [Further Reading](#further-reading)\n\n## Setup\n* Install\n    * [editorconfig](https://editorconfig.org/)\n    * [asdf](https://asdf-vm.com/guide/getting-started.html#_2-download-asdf)\n    * [poetry](https://python-poetry.org/docs/)\n    * [docker](https://docs.docker.com/compose/install/)\n    * [just](https://just.systems/man/en)\n\n## Usage\n### Poetry\n* Install requirements via Poetry: \n    ```bash\n    poetry install\n    poetry run ipython kernel install --name \"python3.10.7\" --user\n    ```\n* Run Jupyter Lab\n    ```bash\n    poetry shell\n    jupyter lab --ip=0.0.0.0 --port=8888 --no-browser\n    ```\n* Quit the server via `ctrl-c` in the terminal\n* Enter `deactivate` to exit the Poetry virtual environment\n\n### Docker\n* Customize the `.env.example` and rename to `.env`\n* General commands\n    ```bash\n    # build image locally\n    docker-compose build --pull --no-cache\n\n    # start container\n    docker-compose up -d\n\n    # stop container\n    docker-compose stop\n\n    # remove container and network\n    docker-compose down\n    ```\n* `justfile` syntax (recommended)\n    ```bash\n    # help\n    just\n\n    # build image locally (no-cache)\n    just build-clean\n\n    # build image locally\n    just build\n\n    # start container\n    just start\n\n    # ssh\n    just exec\n\n    # stop container\n    just stop\n\n    # stop container, remove container and network\n    just down\n    ```\n\n### Both\n* Open a browser and navigate to `http://127.0.0.1:8888`\n  * Docker uses the token specified in `.env`\n* Select the `python3.10.7` kernel if asked\n* Open `demo_pandas.ipynb` from the left-hand column\n* Run cells by selecting them and pressing `shift-enter`\n\n## TODO\n* Polish. Probably.\n* Fix *bonus* code (audience participation??)\n\n## Further Reading\n[Original Repo](https://github.com/realpython/materials/tree/master/pandas-intro)\n\n[Starting JupyterLab](https://jupyterlab.readthedocs.io/en/stable/getting_started/starting.html)\n\n[Dockerizing Jupyter Projects](https://towardsdatascience.com/dockerizing-jupyter-projects-39aad547484a)\n\n[The Spotify Hit Predictor Dataset (1960-2019)](https://www.kaggle.com/datasets/theoverman/the-spotify-hit-predictor-dataset)\n\n[Jupyter Docker Stacks — Docker Stacks documentation](https://jupyter-docker-stacks.readthedocs.io/en/latest/index.html)\n\n[Using Pandas and Python to Explore Your Dataset – Real Python](https://realpython.com/pandas-python-explore-dataset/)\n\n[pandas GroupBy: Your Guide to Grouping Data in Python – Real Python](https://realpython.com/pandas-groupby/)\n\n[SQL Versions of the Most Frequently Used Pandas Functions | Towards Data Science](https://towardsdatascience.com/sql-versions-of-the-most-frequently-used-pandas-functions-bb6399f87461)\n","funding_links":["https://github.com/sponsors/pythoninthegrass"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpythoninthegrass%2Fpandas_meetup","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpythoninthegrass%2Fpandas_meetup","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpythoninthegrass%2Fpandas_meetup/lists"}