Introduction to Regression Methods for Public Health Using R
This is a SECOND DRAFT but is still awaiting peer review. The goal is publication as a printed version (through CRC Press) with the online version remaining freely available.
- Chapters 2-9: Sent out for peer review
If you have any comments or suggestions, feel free to contact me at firstname.lastname@example.org. Thank you!
Introduction to Regression Methods for Public Health using R by Ramzi W. Nahhas is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
This text is suitable as a second biostatistics course for Master of Public Health students or public health professionals. Almost all public health students take an introductory biostatistics course, providing foundational competencies but perhaps not enough to use more advanced methods without additional training. There are a plethora of textbooks covering topics such as linear regression, logistic regression, and survival analysis aimed at those with a background in mathematical statistics and/or without a focus specifically on public health and/or without a focus on using R. The goal of this text is to provide a gentle introduction to regression methods, using R, that covers all the basics and a bit more with examples drawn from public health data. My hope is that what you learn here will give you the knowledge and skills to understand and carry out appropriate basic regression analyses and the foundation and confidence to go deeper. When you are ready to go deeper, there are excellent texts that cover each of the methods covered herein, as well as R programming, in much greater detail (e.g., Faraway 2016; Fox 2015; Fox and Weisberg 2019; Harrell 2015; Klein and Moeschberger 2010; Kleinman and Horton 2014; Lohr 2021; Lumley 2010; van Buuren 2018; Weisberg 2013; H. Wickham, Çetinkaya-Rundel, and Grolemund 2017; Hadley Wickham 2019).
The knitr package (Y. Xie 2015) and the bookdown package (Yihui Xie 2023) were used to compile this text. Package names and inline code are formatted in a typewriter font (e.g.,
lm(Y ~ X)), and function names are followed by parentheses (e.g.,