Practical Foundations of R Programming
4.4 (7 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
209 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Practical Foundations of R Programming to your Wishlist.

Add to Wishlist

Practical Foundations of R Programming

The basics of programming in R: R data structures; R subsetting operations; and R functions
4.4 (7 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
209 students enrolled
Last updated 6/2017
English
Current price: $10 Original price: $40 Discount: 75% off
5 hours left at this price!
30-Day Money-Back Guarantee
Includes:
  • 8 hours on-demand video
  • 4 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Understand the most important concepts relating to data structures, subsetting, and writing functions in R
View Curriculum
Requirements
  • You should have previously installed and used R software and RStudio
  • It is helpful if you have already written some code in R or in other programming languages
Description

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. 

Who is the target audience?
  • Anyone who wishes to learn the fundamental basics of writing applications in R
  • Programmers in other languages who are learning R and wish to better understand the unique features of R
Students Who Viewed This Course Also Viewed
Curriculum For This Course
101 Lectures
07:53:46
+
Introduction to Practical Foundations of R Programming
2 Lectures 06:32
+
Data Structures for R Programming
28 Lectures 02:24:48

Atomic Vectors
07:21

Testing Objects and Coercion
08:30


List Data Structures (part 2)
05:26

Attributes (part 1)
04:31

Attributes (part 2)
04:33

Factors
07:23


Matrices and Arrays (part 2)
06:01

Matrices and Arrays (part 3)
05:11

Matrices and Arrays Exercises
02:08

Matrices and Arrays Exercise Solutions (part 1)
05:22

Matrices and Arrays Exercise Solutions (part 2)
05:31

Creating Data Frames
06:51

Data Frame Testing and Coercion
05:48

More about Data Frames
03:43


Data Frame Exercise Solutions (part 1)
03:22

Data Frame Exercise Solutions (part 2)
03:31

Data Frame Exercise Solutions (part 3)
03:24


Solutions to Data Structures Exercises (part 1)
07:33

Solutions to Data Structures Exercises (part 2)
04:19

Solutions to Data Structures Exercises (part 3)
03:21

Solutions to Data Structures Exercises (part 4)
05:55

Solutions to Data Structures Exercises (part 5)
05:34

Solutions to Data Structures Exercises (part 6)
04:33
+
Subsetting R Objects
35 Lectures 02:40:15


Approaches to Subsetting R Objects (part 2)
05:29

Subsetting Matrices and Arrays (part 1)
07:02

Subsetting Matrices and Arrays (part 2)
06:07

Subsetting Data Frames
05:44


Subsetting Exercises I Solutions (part 1)
06:32

Subsetting Exercises I Solutions (part 2)
05:48

Subsetting Exercises I Solutions (part 3)
03:55

Subsetting Exercises I Solutions (part 4)
03:18

Subsetting Exercises I Solutions (part 5)
03:32

Subsetting Lists (part 1)
03:52

Subsetting Lists (part 2)
04:43

Preserving versus Simplifying Subsetting
06:43


Subsetting Missing / Out-of-Bounds
02:00

Linear Regression Model Subsetting Exercise
01:37

Linear Regression Model Subsetting Exercise Solution
07:39

Subsetting and Assignment (part 1)
04:15

Subsetting and Assignment (part 2)
04:20

Character Subsetting
02:43

Integer Subsetting
04:07

Sampling Rows and Columns Randomly
03:12

Ordering Rows and Columns
05:02

Expanding Aggregated Counts
02:51

Removing Columns from a Data Frame
04:33

Selecting Rows Based on a Logical Condition
05:34

Boolean Algebra versus Sets (part 1)
03:56

Boolean Algebra versus Sets (part 2)
06:20

Subsetting Exercises III
02:45

Subsetting Exercises III with Solutions
07:13

End-of-Section Exercises
04:17

End-of-Section Exercise Solutions (part 1)
04:09

End-of-Section Exercise Solutions (part 2)
04:45
+
The Nature of R Functions
36 Lectures 02:42:11

Primitive Functions
01:24

Functions Exercises I
01:26

Functions Exercises I with Solutions
05:14


Name Masking (part 1)
04:12

Name Masking (part 2)
03:17

Name Masking (part 3)
03:58

Functions versus Variables
05:31

A Fresh Start
05:31

Dynamic Lookup (part 1)
05:41

Dynamic Lookup (part 2)
03:05

Functions Exercises II
01:59

Functions Exercises II with Solutions
03:08


More on Function Calls (part 2)
05:32


Function Arguments (part 2)
05:26

Calling Functions with a List of Arguments
01:47

Default and Missing Arguments
07:24


Lazy Evaluation (part 2)
05:50

The " . . . " (Triple Dot) Function
05:45

Functions Exercises III
01:01

Functions Exercises III with Solutions
07:16

Infix Operator Functions
06:54

Replacement Functions
06:46

Functions Exercises IV
00:47

Functions Exercises IV with Solutions
04:52

Return Values (part 1)
05:14

Return Values (part 2)
04:58


Functions End-of-Section Exercises with Solutions (part 1)
03:48

Functions End-of-Section Exercises with Solutions (part 2)
05:01

Functions End-of-Section Exercises with Solutions (part 3)
03:52

Functions End-of-Section Exercises with Solutions (part 4)
06:02
About the Instructor
Geoffrey Hubona, Ph.D.
4.0 Average rating
1,405 Reviews
11,949 Students
28 Courses
Professor of Information Systems

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. 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.