Appendix E: Further Learning Resources
This book is a starting point. This appendix suggests where to go next: books, courses, documentation, and communities—almost all of them freely available. The resources cited across the chapters are listed first by topic; the remainder are chosen because they suit researchers who are not computer scientists.
Books
Getting started and data handling
- Python for Data Analysis (3rd ed.) by Wes McKinney (McKinney 2022), free to read at wesmckinney.com/book: the definitive introduction to importing, cleaning, manipulating, and exploring data with pandas and NumPy, written by the creator of pandas. The natural next book after Part 1.
- Python Data Science Handbook by Jake VanderPlas, free at jakevdp.github.io/PythonDataScienceHandbook: a thorough, hands-on introduction to the core scientific Python stack (NumPy, pandas, Matplotlib, and Scikit-Learn).
- Effective Pandas by Matt Harrison: a focused, modern guide to idiomatic method chaining and performance in pandas.
- Pro Git by Scott Chacon and Ben Straub, free at git-scm.com/book: the comprehensive, accessible guide to version control with Git and GitHub.
Statistics and inference
- Introduction to Modern Statistics (Çetinkaya-Rundel and Hardin 2024), free at openintro-ims.netlify.app: a modern introductory textbook built around simulation, real data, and statistical inference, matching the philosophy of Chapters 6 and 7.
- Regression and Other Stories (Gelman et al. 2020): an outstanding guide to building, diagnosing, and interpreting regression models in real research, with a free PDF available from the authors.
- Statistical Power Analysis for the Behavioral Sciences (Cohen 1988): the classic, foundational reference on effect sizes and statistical power.
- Think Stats: Exploratory Data Analysis in Python by Allen Downey, free at greenteapress.com/thinkstats2: probability and statistics through computation rather than abstract mathematics.
Mixed models, machine learning, and forecasting
- An Introduction to Statistical Learning with Applications in Python (James et al. 2023), free at statlearning.com: the gold standard introduction to statistical machine learning with Scikit-Learn, covering regression, classification, resampling, tree-based models, and clustering (Chapters 11 to 15).
- Data Analysis Using Regression and Multilevel/Hierarchical Models (Gelman and Hill 2007): multilevel models from the ground up, providing background for the mixed-effects models in Chapter 10.
- Deep Learning with Python (2nd ed.) by François Chollet: the clearest guide to understanding and building neural networks with modern Python frameworks (Chapter 15).
- Forecasting: Principles and Practice (Hyndman and Athanasopoulos 2021), free at otexts.com/fpp3: the standard reference for time series forecasting principles and evaluation (Chapter 16).
Reporting and dashboards
- The Quarto guide at quarto.org: comprehensive documentation, guides, and templates for scientific documents, presentations, books, and interactive dashboards (Chapter 17).
- The Streamlit documentation at docs.streamlit.io: guides and tutorials for building shareable research web applications and interactive dashboards in pure Python.
Documentation and Cheatsheets
- pandas documentation (pandas.pydata.org): includes the “10 Minutes to pandas” tutorial and official printable cheatsheets covering filtering, grouping, and reshaping.
- Seaborn and Matplotlib galleries (seaborn.pydata.org and matplotlib.org): visual galleries with reproducible source code for every standard scientific visualization.
- Scikit-Learn documentation (scikit-learn.org): widely considered the benchmark for scientific software documentation, with in-depth narrative guides explaining the mathematical theory behind every algorithm alongside clear Python examples.
- Statsmodels documentation (statsmodels.org): documentation and tutorial notebooks for linear regression, GLMs, ANOVA, mixed-effects models, and time series analysis.
Courses and practice
- The Carpentries (carpentries.org): free, open-source computational lessons for researchers, including Plotting and Programming in Python, taught at universities worldwide.
- Project Euler (projecteuler.net) and LeetCode (leetcode.com): computational and algorithmic challenges for sharpening programming skills.
- Kaggle (kaggle.com): free datasets, exploratory data analysis notebooks, and machine learning competitions with active community discussions.
- This book’s interactive playground: interactive browser exercises and downloadable chapter projects for hands-on practice.
Communities
You do not have to learn alone; the Python scientific computing community is renowned for welcoming newcomers.
- Stack Overflow (stackoverflow.com/questions/tagged/python): the largest archive of programming solutions. Search with package tags (e.g.
[pandas],[matplotlib],[scikit-learn]), and formulate questions with a minimal reproducible example (MRE; Appendix D). - PyData (pydata.org): an international community of researchers and practitioners who use Python for data analysis, with regional conferences, recorded talks on YouTube, and local meetups in cities worldwide.
- Python Discord & Forums (pythondiscord.com): active, friendly real-time help channels for beginners and intermediate scientific programmers.
- Local Python User Groups (PUGs): meet in many universities and cities to share research workflows and new libraries.
Whatever you learn from, the most effective way to learn Python is to use it on your own research data—a little every day, one question at a time, just as Elaf did.
References
Çetinkaya-Rundel, Mine, and Johanna Hardin. 2024. Introduction to Modern Statistics. 2nd ed. OpenIntro. https://openintro-ims.netlify.app.
Cohen, Jacob. 1988. Statistical Power Analysis for the Behavioral Sciences. 2nd ed. Lawrence Erlbaum Associates.
Gelman, Andrew, and Jennifer Hill. 2007. Data Analysis Using Regression and Multilevel/Hierarchical Models. Cambridge University Press. https://doi.org/10.1017/CBO9780511790942.
Gelman, Andrew, Jennifer Hill, and Aki Vehtari. 2020. Regression and Other Stories. Cambridge University Press. https://doi.org/10.1017/9781139161879.
Hyndman, Rob J., and George Athanasopoulos. 2021. Forecasting: Principles and Practice. 3rd ed. OTexts. https://otexts.com/fpp3/.
James, Gareth, Daniela Witten, Trevor Hastie, Robert Tibshirani, and Jonathan Taylor. 2023. An Introduction to Statistical Learning: With Applications in Python. Springer. https://doi.org/10.1007/978-3-031-38747-0.
McKinney, Wes. 2022. Python for Data Analysis: Data Wrangling with Pandas, NumPy, and Jupyter. 3rd ed. O’Reilly Media. https://wesmckinney.com/book/.