R tutorials that run
in your browser
Every tutorial opens as a live R session. Change a number, press run, and the output updates in place. Free, without an account.
If you're new, start with these five, in order about 65 minutes to your first real chart
The Time Series Forecasting Handbook
From raw data to reliable forecasts, every step runnable in your browser.
Start reading →Browse all tutorials
1,535 pages, grouped by subjectThe full catalog, organized the way the subject is actually structured. Nothing is more than two clicks away, and every page runs live in your browser.
Learn R
34 tutorialsThe language itself: syntax, data types, functions, and the habits that make R feel natural.
Getting Started3
R Fundamentals12
Working Effectively3
R Career & Resources16
- ★R vs Python
- How to Learn R
- R for Excel Users
- R Interview Questions
- R Interview Readiness QuizQuiz
- R Cheat Sheet
- Bias in Data and Models
- Communicating Uncertainty
- Data Ethics
- Data Privacy in R
- R Foundations: The BasicsInteractive
- R Foundations: DebuggingInteractive
- R Foundations: IterationInteractive
- R Foundations: Data StructuresInteractive
- R Foundations: Reproducible WorkflowInteractive
- Reproducibility Crisis
Data Wrangling
29 tutorialsGet data in, clean it up, and shape it with dplyr and tidyr, the daily toolkit of every analyst.
Import & Setup3
dplyr Essentials7
Join & Reshape4
Clean & Quality3
Strings & Dates3
Scale & Connect9
- DBI & Databases
- DuckDB & duckplyr
- Web Scraping (rvest)
- REST APIs (httr2)
- Data Wrangling with dplyrInteractive
- Join & ReshapeInteractive
- data.tableInteractive
- Report-Ready TablesInteractive
- Communicate & AutomateInteractive
Statistics
169 tutorialsFrom probability to regression, ANOVA, Bayesian methods and statistical theory, with runnable R at every step.
EDA & Data Quality3
Probability10
Inference & Estimation18
- Maximum Likelihood Estimation
- ★Hypothesis Testing
- Sample Size Planning
- ★Choosing the Right Test
- ★Statistical Tests
- Measures of Association
- Point Estimation
- Confidence Intervals
- Type I and II Errors
- Power Analysis
- Effect Size
- t-Tests
- Proportion Tests
- Normality & Variance Tests
- Chi-Square Tests
- Wilcoxon, Mann-Whitney & Kruskal-Wallis
- Multiple Testing Correction
- Hypothesis Testing QuizQuiz
Regression8
Reporting & Communication5
Regression in Practice12
ANOVA & Experiments10
GLMs & Categorical Data10
Multivariate Methods10
Nonparametric & Resampling7
Linear Algebra for Statistics8
Statistical Theory10
Bayesian Foundations4
Bayesian Modeling9
Machine Learning40
- Random ForestsInteractive
- Gradient BoostingInteractive
- tidymodelsInteractive
- Machine Learning QuizQuiz
- The t-test (Lesson)
- Populations & Sampling Bias
- Types of Data
- What Statistics Is For
- Mean, Median, SD & IQR
- Sampling Methods
- Z-Scores & Percentiles
- Covariance & Correlation
- Normal Distribution
- Which Distribution When
- First Hypothesis Test
- How Inference Works
- Margin of Error & Sample Size
- Paired Designs
- Statistical vs Practical
- What p-Values Mean
- Power by Simulation
- Reading glm() Output
- Reading lm() Output
- Offsets & Exposure
- Zero-Inflated & Hurdle Models
- GLM Diagnostics
- Random Intercepts & Slopes
- Checking Model Assumptions
- Crossed vs Nested Effects
- GEE vs Mixed Models
- Mixed Model Inference
- Measurement Reliability
- Multiple Imputation with mice
- p-Hacking and Preregistration
- Business Experiment Capstone
- Clinical Comparison Capstone
- Survey Analysis Capstone
- Bayesian Workflow
- MCMC Diagnostics
- Answering Reviewer Comments
Visualization
78 tutorialsggplot2 from the grammar up: every chart type, plus the polish that makes figures publication-ready.
ggplot2 Foundations9
Distributions & Groups3
Relationships3
Advanced Charts3
Exploratory Analysis5
Interactive & Maps4
Customization & Reference45
- ggplot2 Legends
- Secondary Axis
- Log Scale
- patchwork (Combine Plots)
- ★Publication-Ready Figures
- ggplot2 Quickref
- Advanced ggplot2Interactive
- ggplot2Interactive
- Interactive DashboardsInteractive
- Reading ggplot2 Code
- Area Charts & Ribbons
- Text Labels in ggplot2
- 2D Density & Hexbin
- Error Bars
- The stat System
- Summary Stats on Plots
- Date & Time Axes
- Position Adjustments
- Significance Brackets
- Visualizing Uncertainty
- Scale Transformations
- Coefficient Plots
- Custom Fonts in Plots
- Raincloud Plots
- Build a ggplot2 Theme
- Chart Annotation
- ggplot2 Extensions
- Plot Template Functions
- Plotting Big Data
- Write a Geom & Stat
- Bump Charts
- Dumbbell & Slope Charts
- Population Pyramids
- Bubble & Point Maps
- Pie Charts and Polar Coords
- Multi-Panel Figures
- Small Multiples
- Inset & Magnifier Plots
- Export & Save Plots
- gganimate
- ggiraph: Interactive Charts
- Accessible Charts
- Publication Figure System
- Recreating Pro Charts
- Advanced Faceting
Time Series
76 tutorialsDecompose, model and forecast time series with the classic r-statistics.co forecasting guides.
Time Series76
- ★Time Series Analysis
- Time Series Forecasting
- More Time Series Forecasting
- Time Series QuizQuiz
- Test Stationarity
- Time Series Objects
- Visualize Time Series
- ACF and PACF
- Moving Averages
- Time Series Decomposition
- ETS Models
- Exponential Smoothing
- Holt-Winters
- ARIMA Diagnostics
- ARIMA Models
- Choose ARIMA Order
- SARIMA Models
- auto.arima()
- Forecast Accuracy
- Time Series Cross-Validation
- NNETAR Models
- Prophet
- TBATS Model
- fable and tsibble
- GARCH Models
- Prediction Intervals
- VAR Models
- Anomaly Detection
- Changepoint Detection
- Combining Forecasts
- Cointegration
- Kalman Filter
- TAR and STAR Models
- Forecast Reconciliation
- Hierarchical Time Series
- MinT Reconciliation
- Benchmark Forecasts
- Time Series Features
- Box-Cox Transformations
- Feature Engineering for Forecasting
- Time Series Regression
- tsibble Objects
- Conformal Prediction
- Global Forecasting Models
- Gradient Boosting for Forecasting
- Backtesting Forecasts
- Distributional Forecasts
- Forecast Scoring Rules
- Calendar Effects
- CausalImpact
- Missing Values in Time Series
- Bootstrapping and Bagging
- MSTL: Multiple Seasonalities
- Multiple Seasonality
- Deep Learning for Forecasting
- Granger Causality and IRFs
- Structural Time Series
- Count Time Series (INGARCH)
- Intermittent Demand (Croston)
- M-Competition Lessons
- Batch Forecasting
- Short and Long Series
- Structural Breaks
- Forecast Monitoring
- Forecast Value Added
- Retail Demand Forecasting
- Energy Load Forecasting
- Time Series FoundationsInteractive
- Time Series DecompositionInteractive
- Forecasting ToolboxInteractive
- Time Series RegressionInteractive
- Exponential Smoothing ETSInteractive
- ARIMA and Seasonal ARIMAInteractive
- Dynamic Regression and Complex SeasonalityInteractive
- State Space Models and the Kalman FilterInteractive
- Spectral and Frequency Domain AnalysisInteractive
Advanced R
29 tutorialsHow R actually works: functional programming, OOP, environments, debugging and performance.
Functional Programming9
OOP in R8
How R Works6
Debugging & Performance6
Classic Tutorials
9 tutorialsThe originals that put r-statistics.co on the map, read by millions of R users since 2016.
Practice Exercises
159 tutorialsAuto-graded problems and timed mastery quizzes. Solve in the browser, earn the certificate.
Featured Problem Sets17
- R Interview Questions (Top 50)
- Statistics Interview Questions (25)
- ML Interview Questions (25)
- Top 20 Bayesian Problems
- Probability Puzzles (Top 20)
- A/B Testing Interview Cases (20)
- SQL to dplyr (30 Translations)
- Top 25 Regression Problems
- Top 20 Time Series Problems
- The Resampling 15
- Data Cleaning Gauntlet (25)
- Error Triage Drills (20)
- The Regex 20
- Dates and Times Drills
- Base R Speed Round
- ggplot2 Recreation Challenge
- Take-Home Simulator
Mastery Quizzes (Certificate)11
R Fundamentals12
- R Basics (15 problems)
- R Vectors (12 problems)
- R Data Frames (15 problems)
- R Lists (10 problems)
- R Control Flow (12 problems)
- R Functions (10 problems)
- R Strings (10 problems)
- R Date & Time (10 problems)
- R apply Family (12 problems)
- R Subsetting (10 problems)
- Functional Programming (10 problems)
- OOP in R (8 problems)
Data Wrangling9
Visualization6
Statistics104
- Probability in R Exercises
- R Probability Distributions (12 problems)
- Binomial Distribution Exercises
- Poisson Distribution Exercises
- Central Limit Theorem Exercises
- Hypothesis Testing Exercises
- t-Test Exercises (12 problems)
- Chi-Square Exercises (10 problems)
- Confidence Interval (10 problems)
- Power Analysis Exercises (8 problems)
- Nonparametric Exercises (10 problems)
- Multiple Testing (8 problems)
- Multiple Regression Exercises
- Logistic Regression Exercises (10 problems)
- Regression Diagnostics Exercises
- Ridge & Lasso Exercises
- GLM Exercises (10 problems)
- ANOVA Exercises (15 problems)
- Post-Hoc Tests Exercises (8 problems)
- Repeated Measures (8 problems)
- Experimental Design Exercises (8 problems)
- A/B Testing Exercises (8 problems)
- Linear Regression (15 problems)
- PCA Exercises (10 problems)
- Clustering Exercises (10 problems)
- SEM Exercises (8 problems)
- A/B Testing Exercises
- API Calls Exercises
- ARIMA Exercises
- Apply Family Exercises
- Bayesian Statistics Exercises
- Clustering Exercises
- Correlation Exercises
- Cross Validation Exercises
- Data Cleaning Exercises
- Data Viz Exercises
- Data Wrangling Exercises
- Decision Tree Exercises
- EDA Exercises
- GAM Exercises
- Machine Learning Exercises
- Mixed Effects Exercises
- Network Analysis Exercises
- Parallel Computing Exercises
- Poisson Regression
- Probability Distributions
- R Beginner Exercises
- R Debugging Exercises
- R Markdown Exercises
- R Package Development
- R Performance Exercises
- R for Biostatistics
- R for Data Science Exercises
- R for Finance Exercises
- R for Genomics
- R for Healthcare Exercises
- R for Marketing Analytics
- R for Sports Analytics
- Random Forest Exercises
- Regex Exercises
- Sampling Methods Exercises
- Shiny Exercises
- Spatial Analysis Exercises
- Survey Analysis Exercises
- Survival Analysis Exercises
- Text Mining Exercises
- Time Series Exercises
- Web Scraping Exercises
- XGBoost Exercises
- broom Exercises
- caret Exercises
- data.table Exercises
- dbplyr / SQL Exercises
- dplyr Exercises
- dplyr group_by Exercises
- dplyr Joins Exercises
- dplyr Window Functions Exercises
- forcats Exercises
- ggplot2 Bar Chart Exercises
- ggplot2 Color Scales Exercises
- ggplot2 Exercises
- ggplot2 Facets Exercises
- ggplot2 Heatmap Exercises
- ggplot2 Themes Exercises
- gt Tables Exercises
- leaflet Exercises
- lubridate Exercises
- plotly Exercises
- purrr Exercises
- readr Exercises
- stringr Exercises
- testthat Exercises
- tidymodels Exercises
- tidyr Exercises
- tidyr Nest/Unnest Exercises
- tidyr Pivot Exercises
- Tidyverse Exercises
- Date-Time Manipulation Exercises
- Loops vs Vectorization Exercises
- Time Series in R Exercises
- Exponential Smoothing Exercises
- Forecast Evaluation Exercises
- Decomposition Exercises
- brms Exercises
Practice Exercises
Short problems you solve in the browser, with instant feedback. Every section above has matching sets, and solving 80% of a track earns the certificate.