{"id":15568584,"url":"https://github.com/ipeirotis/introduction-to-python","last_synced_at":"2025-07-01T03:07:03.477Z","repository":{"id":45217084,"uuid":"159976010","full_name":"ipeirotis/introduction-to-python","owner":"ipeirotis","description":"Notes for the \"Introduction to Programming for Data Science\" class","archived":false,"fork":false,"pushed_at":"2024-12-03T21:56:18.000Z","size":6050,"stargazers_count":40,"open_issues_count":9,"forks_count":51,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-05-19T12:13:13.615Z","etag":null,"topics":["data-science","for-beginners","python","python3"],"latest_commit_sha":null,"homepage":null,"language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc-by-sa-4.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ipeirotis.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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}},"created_at":"2018-12-01T18:42:16.000Z","updated_at":"2025-03-29T08:00:23.000Z","dependencies_parsed_at":"2023-01-30T19:15:39.458Z","dependency_job_id":"b0c35076-c751-4894-9eae-5e03b3ba7c7e","html_url":"https://github.com/ipeirotis/introduction-to-python","commit_stats":{"total_commits":86,"total_committers":5,"mean_commits":17.2,"dds":"0.17441860465116277","last_synced_commit":"928b1b5a5526005d5c212563afc57502bb2e4fe3"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ipeirotis/introduction-to-python","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ipeirotis%2Fintroduction-to-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ipeirotis%2Fintroduction-to-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ipeirotis%2Fintroduction-to-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ipeirotis%2Fintroduction-to-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ipeirotis","download_url":"https://codeload.github.com/ipeirotis/introduction-to-python/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ipeirotis%2Fintroduction-to-python/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262887194,"owners_count":23379768,"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":["data-science","for-beginners","python","python3"],"created_at":"2024-10-02T17:18:57.828Z","updated_at":"2025-07-01T03:07:03.402Z","avatar_url":"https://github.com/ipeirotis.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/ipeirotis/introduction-to-python/blob/master/)\n[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/ipeirotis/introduction-to-python/master)\n[![Build Status](https://github.com/ipeirotis/introduction-to-python/workflows/Check%20that%20all%20notebooks%20work/badge.svg)](https://github.com/ipeirotis/introduction-to-python/actions?query=branch%3Amaster)\n\n# Introduction to Python for Data Science\n\nThis is a set of notes used for teaching Python to students that have never used Python, or programmed in any language. In a usual semester, it takes approximately 4 weeks (meeting twice a week for an hour) to go through the material, for a freshmen undergraduate class. \n\n## Notes\n\n* The notes are in the form of iPython notebooks and are stored under the `/notes` folder.\n* You can [open the notes in Google Colab](https://colab.research.google.com/github/ipeirotis/introduction-to-python/blob/master/). With Google Colab, you can save your work in your Google Drive. \n* If you do not want to use Google Colab, you can [launch the notes in Binder](https://mybinder.org/v2/gh/ipeirotis/introduction-to-python/master), which is a temporary Jupyter server launched on-demand. Note that the Binder server will shutdown after a period of idleness. If you want to save your work, and you should save the notes locally to your computer.\n\n\n## Videos\n\n* [Videos for the class](https://www.youtube.com/playlist?list=PLqAPn_b_yx0TBDqe5-AMSed6sYzMj9qkN)\n\n## Recommended Books\n\n* [Python for Everybody: Exploring Data In Python 3](https://www.py4e.com/book): This is a textbook for students that are learning Python as their first programming language, with the objective of using programming to handle and analyze data. \n* [Automate the Boring Stuff using Python](https://automatetheboringstuff.com): A task-driven textbook that teaches Python by focusing on how to automate various tasks, using programming.\n\n\n## Additional Books for Learning Python\n\n* [How To Think Like a Computer Scientist](https://runestone.academy/ns/books/published/thinkcspy/index.html): An interactive guide to programming and Python. The book \"Python for Everybody\" (listed above) is partially based on this book.\n* [Learn Python the Hard Way](https://learnpythonthehardway.org/python3/): An introduction to programming and Python. It targets complete beginners. It uses a drill-based approach for teaching, which can be tedious at times. Nevertheless, it is considered one of the standard textbooks for learning Python.\n\n## Online Classes\n\n* [AI Python for Beginners](https://www.deeplearning.ai/short-courses/ai-python-for-beginners/)\n* The following Coursera courses [Getting Started with Python](https://www.coursera.org/learn/python), [Python Data Structures](https://www.coursera.org/learn/python-data), [Using Python to Access Web Data](https://www.coursera.org/learn/python-network-data), [Using Databases with Python](https://www.coursera.org/learn/python-databases), [Capstone: Retrieving, Processing, and Visualizing Data with Python](https://www.coursera.org/learn/python-capstone) are well-alinged with the objectives of our class. \n* [Code Academy, Python class](https://www.codecademy.com/learn/python): This is a useful interactive tutorial for beginners, who are trying to understand programming in general, and Python in particular\n* [Google’s Python class](https://developers.google.com/edu/python/)\n* [DataCamp, Intro to Python for Data Science](https://campus.datacamp.com/courses/intro-to-python-for-data-science/chapter-1-python-basics?ex=1)\n* [DataQuest, Python Basics](https://www.dataquest.io/mission/1/python-basics)\n\n## Additional Pointers\n\n* [Official Python 3 Tutorial](https://docs.python.org/3/tutorial/index.html)\n* [Python Tutor](http://www.pythontutor.com/)\n* [Useful iPython Notebooks](https://github.com/ipython/ipython/wiki/A-gallery-of-interesting-IPython-Notebooks): A wide variety of useful tutorials in iPython Notebooks for a wide variety of topics\n* [Python for Econometrics](https://www.kevinsheppard.com/Python_for_Econometrics)\n* [Quantitative Economics](https://python.quantecon.org/intro.html): An introduction to scientific computing using Python, by Thomas J. Sargent and John Stachurski\n* [Pytudes](https://github.com/norvig/pytudes) by Peter Norvig. A set of problems, in a wide variety of fields, solved with Python. Clear and structured problem descriptions, and _beautiful_ code for solving them. You will learn something everytime you read one of the provided notebooks.\n\n## Python Exercises\n\n* http://www.pyschools.com/ [highly recommended]\n* http://www.singpath.com/#/paths\n* http://learnpython.org/\n* http://www.practicepython.org/\n* http://www.codeabbey.com/index/task_list\n* http://codingbat.com/python\n* http://usingpython.com/python-programming-challenges/\n* http://www.openbookproject.net/pybiblio/practice/elkner/\n* http://www.openbookproject.net/pybiblio/practice/wilson/\n* https://github.com/donnemartin/interactive-coding-challenges\n\n## Credits\n\n* I ~~have stolen~~ relied heavily on the \"Python for Everybody\" and the \"How To Think Like a Computer Scientist\" books to develop the structure and the material for the notes. \n* The initial version of the notebooks came from Josh Attenberg, from his course \"Practical Data Science\" that was taught at NYU/Stern.\n* Katherine Hoffmann contributed to the development of the current notebooks.\n\n## License\n\n* Outside NYU, the material is licensed under the Creative Commons Attribution-ShareAlike 4.0 license. If you are working within NYU, note that any usage of the material is strictly prohibited.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fipeirotis%2Fintroduction-to-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fipeirotis%2Fintroduction-to-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fipeirotis%2Fintroduction-to-python/lists"}