In its most basic form, R can be used as a simple calculator. Consider the following arithmetic operators:
The last two might need some explaining:
The ^ operator raises the number to its left to the power of the number to its right. For example:
3^2 is 9.
The modulo returns the remainder of the division of the number to the left by the number on its right. For example:
5 modulo 3 or 5 %% 3 is 2.
Note how the # symbol is used to add comments on the R code.
# An addition
5 + 5
## [1] 10
# A subtraction
5 - 5
## [1] 0
# A multiplication
3 * 5
## [1] 15
# A division
(5 + 5) / 2
## [1] 5
# Exponentiation
2^5
## [1] 32
# Modulo
28 %% 6
## [1] 4
A basic concept in (statistical) programming is called a variable.
A variable allows you to store a value (e.g. 4) or an object (e.g. a function description) in R. You can then later use this variable’s name to easily access the value or the object that is stored within this variable.
You can assign a value 4 to a variable my_var with the command:
my_var <- 4
Instructions
Over to you: complete the code in the editor such that it assigns the value 42 to the variable x in the editor. Submit the answer. Notice that when you ask R to print x, the value 42 appears.
# Assign the value 42 to x
x <- 42
# Print out the value of the variable x
x
## [1] 42
Have you noticed that R does not print the value of a variable to the console when you did the assignment?
x <- 42 did not generate any output, because R assumes that you will be needing this variable in the future. Otherwise you wouldn’t have stored the value in a variable in the first place, right?
Suppose you have a fruit basket with five apples. As a data analyst in training, you want to store the number of apples in a variable with the name my_apples.
Instructions
Type the following code in the editor:
# Assign the value 5 to the variable my_apples
my_apples <- 5
# Print out the value of the variable my_apples
my_apples
## [1] 5
Every tasty fruit basket needs oranges, so you decide to add six oranges. As a data analyst, your reflex is to immediately create the variable my_oranges and assign the value 6 to it. Next, you want to calculate how many pieces of fruit you have in total. Since you have given meaningful names to these values, you can now code this in a clear way:
my_apples + my_oranges
Instructions
Type the following code in the editor:
# Assign a value to the variables my_apples and my_oranges
my_apples <- 5
# Add these two variables together
my_oranges <-6
# Add my_apples and my_oranges
my_apples + my_oranges
## [1] 11
# Create the variable my_fruit
my_fruit <- my_apples + my_oranges
# Print out the value of the variable my_fruit
my_fruit
## [1] 11
The great advantage of doing calculations with variables is re usability. If you just change my_apples to equal 12 instead of 5 and rerun the script, my_fruit will automatically update as well.
Common knowledge tells you not to add apples and oranges. But hey, that is what you just did, no :-)? The my_apples and my_oranges variables both contained a number in the previous exercise. The + operator works with numeric variables in R.
If you really tried to add “apples” and “oranges”, and assigned a text value to the variable my_oranges (see the editor), you would be trying to assign the addition of a numeric and a character variable to the variable my_fruit. This is NOT possible.
Instructions
Submit the answer and read the error message. Make sure to understand why this did not work.
Adjust the code so that R knows you have 6 oranges and thus a fruit basket with 11 pieces of fruit.
Assign a value to the variable my_apples
my_apples <- 5
Fix the assignment of my_oranges
my_oranges <- “six”
Create the variable my_fruit and print it out
my_fruit <- my_apples + my_oranges
my_fruit
There Was An Error In Your Code
Your code cannot be executed due to a syntax error. Check the console for more details.
Error in my_apples + my_oranges : non-numeric argument to binary operator
# Assign a value to the variable my_apples
my_apples <- 5
# Fix the assignment of my_oranges
my_oranges <- 6
# Create the variable my_fruit and print it out
my_fruit <- my_apples + my_oranges
my_fruit
## [1] 11
R works with numerous data types. Some of the most basic types to get started are:
Note how the quotation marks in the editor indicate that “some text” is a string.
Instructions
Change the value of the:
Change my_numeric to be 42
my_numeric <- 42.5
Change my_character to be “universe”. Note that the quotation marks indicate that “universe” is a character.
my_character <- “some text”
Change my_logical to be FALSE
my_logical <- TRUE
Note that R is case sensitive!
# Change my_numeric to be 42
my_numeric <- 42
# Change my_character to be "universe"
my_character <- "universe"
# Change my_logical to be FALSE
my_logical <- FALSE
Do you remember that when you added 5 + “six”, you got an error due to a mismatch in data types? You can avoid such embarrassing situations by checking the data type of a variable beforehand.
You can do this with the class() function, as the code in the editor shows.
# Declare variables of different types
my_numeric <- 42
my_character <- "universe"
my_logical <- FALSE
# Check class of my_numeric
class(my_numeric)
## [1] "numeric"
# Check class of my_character
class(my_character)
## [1] "character"
# Check class of my_logical
class(my_logical)
## [1] "logical"