RPIUndergraduate courses
R Programming Intermediate
R as a programming language rather than a calculator — data structures, loop performance, user-defined functions and lexical scoping.
- Intermediate
- 4 weeks
- Approx. 15 hours per week
- 3 semester hours
About this course
This course gives experienced data analysts a systematic overview of R as a programming language, emphasizing good programming practices and the development of clear, concise code. It treats the language itself as the subject: how R's data types and structures behave, what loops actually cost and how to measure that, how to write your own functions and how scoping decides what those functions can see, and how to replace loops with functions applied across a structure. The aim is to move from writing R that works to writing R that another analyst can read and that a large data set will not defeat.
Who this course is for
Statistical analysts with at least a year of daily R experience who want to use R as a serious statistical computing tool rather than as a place to run a handful of remembered commands.
What you will learn
6 outcomes
By the end of this course, you will be able to:
- Handle the different data types and structures efficiently
- Recognize and code the different types of loop
- Measure and monitor the performance of your own code
- Create user-defined functions
- Use functions to avoid loops
- Apply lexical scoping correctly
Week by week
4-Week curriculum overview
This curriculum is identical across all start dates. Expand a week to explore the topics covered.
- Weeks
- 4
- Your week
- Approx. 15 hours
- Level
- Intermediate
DataWeek 1
- Review of R data types and structures
- Importing data
- Recoding data
LoopsWeek 2
- Measuring and monitoring R's performance
- The different types of loop
- Fast loops
FunctionsWeek 3
- Creating user-defined functions
- Proper lexical scoping
Avoiding loopsWeek 4
- Using user-defined functions to avoid loops
Instructors
Expert-Led Guidance
Each cohort is led by dedicated instructors and assistant teachers who actively lead weekly discussions, provide personalized feedback and grade your assignments.

Mr. Kuber Deokar
Mr. Kuber Deokar is Data Science Lead at UpThink EduTech Services. He holds a master's degree in Statistics from the University of Pune, India, where he previously taught undergraduate statistics. He co-authored Machine Learning for Business Analytics with Galit Shmueli, Peter Bruce and Nitin Patel. With over a decade of experience, he specializes in course design, development, delivery and management, coordinating online courses and the communication between course creators, instructors, teaching assistants and students. His interests are machine learning and responsible artificial intelligence.
Before you start
What you need to know first
Introduction to R Programming
Course Format & Schedule
This is a 4-week, 100% online, asynchronous course.
- No mandatory live sessions: Log in and complete your work at times that fit your schedule.
- Weekly Releases: At the start of each week, you will receive new lecture materials and answer keys for the previous week's exercises.
- Interactive Community: Work through exercises, submit assignments, and engage with your instructor and peers via a private discussion board.
Homework
Assigned readings, guided exercises in writing code, narrated slides, and supplemental readings available online.
Texts
The course text is The Art of R Programming: A Tour of Statistical Software Design, by Norman Matloff.
Software
You should be familiar with R and have access to it. The recommended editor for this course is eMacs. RStudio is used elsewhere, but it runs a different R engine, and the resulting differences in behavior are a distraction in a course that is about the language itself.
FAQ
Why eMacs rather than RStudio?This course
Because this course is about R the language, and RStudio runs a different R engine. The discrepancies in behavior are small but they land exactly where the course is looking — scoping, evaluation and performance — so an exercise can appear to fail when it has not. eMacs keeps what you see and what the material says in agreement.
I use R every day. Will this cover things I already know?This course
Week one reviews data types and structures quickly, and that will be familiar. The rest is unlikely to be: most people who use R daily have never measured a loop, written a function whose scoping they could defend, or replaced iteration with an applied function on purpose rather than by copying a pattern.
Is there a money-back or satisfaction guarantee?Every course
We handle cancellation and refund requests on an individual basis. If a course is not meeting your expectations or your circumstances change, please reach out to our team (support@learnstatistics.org) so we can work with you on a solution.
Can I transfer to a later start date or withdraw after the course begins?Every course
Yes. If you need to defer your enrollment to a future start date, withdraw mid-course, or transfer your seat to a colleague, please contact us directly. We address these requests flexibly on a case-by-case basis.
Who teaches the course?Every course
Each cohort is led by dedicated instructors and assistant teachers who actively lead weekly discussions, provide personalized feedback and grade your assignments.
Something not answered here? Ask us before you book — and the terms set out what a purchase covers.
Credit, and where it counts
This course carries a verified figure of 3 semester hours. A credit recommendation from the American Council on Education says what a course is worth; the institution receiving it decides whether to award it.
Anyone can take this subject: there is no application, and you do not have to be studying at a university. It also counts toward a degree at Thomas Edison State University, which decides what to award for it. The full position — including the limits each university publishes is on its own page, and worth reading before you buy.