3 - R and RStudio Basics
Objectives
- Introduction to RStudio
- Introduction to Core R Data Types
- Introduction to R Control Flow
- Overview of R Data Input and Output
- R Data Wrangling: Transformation using Base R
Topics
- Basic RStudio tour: console, editor, environment/build/git, help/packages
- How to run RStudio: Application, Server, Cloud
- Basic Data Types
- Vector, Matrix, … of
int
, double
, char
, logical
, …
- Date, Datetime, factors, …
NA
, NaN
, NULL
- If time: More on types, dispatch, classes, …
- Compound Types
- Not Covered
- Closure
- Environment
- Language Object
- Getting Data In is part of just about any analysis!
- R excels at this
- truly broad coverage of file formats
- as well as ‘backends’ such as databases
- or different web-based APIs
- Our focus: read/write of csv data
- Mention other formats: json, xml, …
- Efficient R-specific storage: rds
- Mention protobuf, msgpack, feather, fst, …
- Data wrangling topics
data.frame
manipulations
- modifying by adding columns
- subsetting and summaries
- conditional operation by groups
- merging (and its relationship to SQL joins)
- functional programming approaches
Core Material
Lecture Slides
Lecture Videos
The core videos which complement the slides are the (now captioned) versions of the 2021 course. As the captions may obstruct some of the displayed code, we also show the uncaptioned original
versions.
- Video 16 (2022): Week 5 (ClassTranscribe, edited captions)
- Video 17 (2021): RStudio Intro (Box, captioned), also Video 17 (2021): RStudio Intro (uncaptioned)
- Video 18 (2021): R Data Type Intro (Box, captioned), also Video 18 (2021): R Data Type Intro (uncaptioned)
- Video 19 (2021): R Control Flow (Box, captioned), also Video 19 (2021): R Control Flow (uncaptioned)
- Video 20 (2022): Week 6 (ClassTranscribe, edited captions)
- Video 21 (2021): Data Input/Output (Box, captioned) and example code, also Video 21 (2021): Data Input/Output (uncaptioned)
- Video 22 (2021): Data Wrangling (Box, captioned) and example code, also Video 22 (2021): Data Wrangling (uncaptioned)
- Chapter 4: Basics of R in Lander, R for Everyone, 2017.
- Chapter 5: Advanced Data Structures
in Lander, R for Everyone, 2017.
- Chapter 7: R Programming Structures in Matloff, Art of R Programming, 2011.
- Chapter 6: Reading Data into R in Lander, R for Everyone, 2017.
- Chapter 5: Data Frames in Matloff, Art of R Programming, 2011.
- Chapter 6: Factor And Tables in Matloff, Art of R Programming, 2011.
- Sections 1 and 2 of Chapter 11, Group Manipulations in Lander, R for Everyone, 2017.
Additional Resources