Practical Foundations of R Programming is the first course of a learning path that teaches critical foundation skills necessary to create quality code using the free and open-access R programming language. This course, and the courses that follow, are useful for both beginner and intermediate R programmers who want to understand the unique features of R and why "R works the way it does." I have been using, teaching, and writing applications in R for 6 years and have come to appreciate that R is a beautiful and elegant language that is especially well-suited for writing applications for data analytics, and for mathematical and statistical applications. Furthermore, R is superior in terms of inherent graphical data presentation capabilities that go hand-in-hand with exploring and understanding data relationships.
Most introductory R courses, those that do not directly address sharpening one's R programming skills, first teach the important R data structures, then the basics of R functions, and generally the use of base R graphics capabilities. However, these introductory R courses are not targeted at the R programmer population, but rather at the general R user population. This course, Practical Foundations of R Programming, which contains all-unique material compared to my other Udemy R courses, addresses R data structures, R subsetting, and R functions, but from the focused perspective of someone who intends to write efficient higher-level applications using R. It is specifically intended to teach the most important foundation concepts and features of the R programming language which are necessary to understand to write efficient and effective applications in R.
This course, which is exclusively "hands-on," demonstrates the construction and use of R code within the RStudio IDE, and focuses on the unique features of R that can make writing applications in R both a challenge and a delight. The course does not present a single power point slide and relies heavily on user exercises. In each of the three major sections of the course, (1) data structures, (2) subsetting, and (3) functions, there are multiple sets of within-section exercises, as well as a final end-of-section exercise set. Participants are encouraged to complete each set of exercises "on their own" before they view the videos that present the exercise solutions. All course videos, and all exercises, as well as their solutions, are presented within R scripts that are made accessible with the course materials. Anything and everything that you see me demonstrate and/or discuss in the 100+ course videos are available for you to download at the beginning of the course.
The second course in this learning path, which should be available to you by the time you complete this first course, will delve more deeply into functional programming in R per se. The second course will have a similar format to this first course: all "hands-on" with extensive use of practical and relevant in-section, and end-of-section, exercises.
Dr. Geoffrey Hubona held full-time tenure-track, and tenured, assistant and associate professor faculty positions at 3 major state universities in the Eastern United States from 1993-2010. Currently, he is a visiting associate professor of MIS at Texas A&M International University. In these positions, he taught dozens of various statistics, business information systems, and computer science courses to undergraduate, master's and Ph.D. students. He earned a Ph.D. in Business Administration (Information Systems and Computer Science) from the University of South Florida (USF) in Tampa, FL; an MA in Economics, also from USF; an MBA in Finance from George Mason University in Fairfax, VA; and a BA in Psychology from the University of Virginia in Charlottesville, VA. He is the founder of the Georgia R School (2010-2014) and of R-Courseware (2014-Present), online educational organizations that teach research methods and quantitative analysis techniques. These research methods techniques include linear and non-linear modeling, multivariate methods, data mining, programming and simulation, and structural equation modeling and partial least squares (PLS) path modeling.