R Operators Tutorial with Examples

In R, operators are symbols or keywords used to perform operations on variables or values. Operators in R are used for mathematical calculations, logical comparisons, and manipulating data.

In this tutorial, we’ll explore various types of operators in R, including arithmetic, relational, logical, and assignment operators.

Types of Operators in R:

Let’s dive into each of these types with explanations and code examples.

1. Arithmetic Operators

Arithmetic operators are used to perform basic mathematical operations such as addition, subtraction, multiplication, division, and more.

List of Arithmetic Operators:

Operator Description
+ Addition
Subtraction
* Multiplication
/ Division
%% Modulus (Remainder)
%/% Integer Division (Quotient)
^ or ** Exponentiation (Power)

Example:

# Arithmetic operations
a <- 10
b <- 3

# Addition
result <- a + b
print(result)  # Outputs: 13

# Subtraction
result <- a - b
print(result)  # Outputs: 7

# Multiplication
result <- a * b
print(result)  # Outputs: 30

# Division
result <- a / b
print(result)  # Outputs: 3.333333

# Modulus (Remainder of division)
result <- a %% b
print(result)  # Outputs: 1

# Integer Division (Quotient)
result <- a %/% b
print(result)  # Outputs: 3

# Exponentiation (Power)
result <- a ^ b
print(result)  # Outputs: 1000
  • Arithmetic operators are used to perform basic mathematical operations between numbers.

2. Relational (Comparison) Operators

Relational operators are used to compare two values or variables. These operators return a logical value (TRUE or FALSE) based on the comparison.

List of Relational Operators:

Operator Description
== Equal to
!= Not equal to
< Less than
> Greater than
<= Less than or equal to
>= Greater than or equal to

Example:

# Relational operations
x <- 15
y <- 10

# Equal to
print(x == y)  # Outputs: FALSE

# Not equal to
print(x != y)  # Outputs: TRUE

# Greater than
print(x > y)   # Outputs: TRUE

# Less than
print(x < y)   # Outputs: FALSE

# Greater than or equal to
print(x >= y)  # Outputs: TRUE

# Less than or equal to
print(x <= y)  # Outputs: FALSE
  • Relational operators compare two values and return a logical result (TRUE or FALSE).

3. Logical Operators

Logical operators are used to combine multiple logical conditions or compare logical values. These operators return TRUE or FALSE based on logical comparisons.

List of Logical Operators:

Operator Description
& Element-wise AND (both conditions true)
&& AND (first condition true)
` `
`
! NOT (logical negation)

Example:

# Logical operations
x <- TRUE
y <- FALSE

# AND (both must be TRUE)
print(x & y)  # Outputs: FALSE

# OR (either must be TRUE)
print(x | y)  # Outputs: TRUE

# NOT (negation)
print(!x)     # Outputs: FALSE

# Using multiple conditions with AND (&&)
a <- 10
b <- 20
print(a < b && a > 5)  # Outputs: TRUE

# Using multiple conditions with OR (||)
print(a < 5 || b > 15)  # Outputs: TRUE
  • Logical operators are used to combine or negate logical values, often in conditional statements.

4. Assignment Operators

Assignment operators are used to assign values to variables. The most common operator is <-, but there are other options as well.

List of Assignment Operators:

Operator Description
<- Assign value to variable (leftward)
-> Assign value to variable (rightward)
= Assign value (alternative to <-)
<<- Global assignment (inside functions)

Example:

# Leftward assignment
x <- 10
print(x)  # Outputs: 10

# Rightward assignment
20 -> y
print(y)  # Outputs: 20

# Equal sign assignment
z = 30
print(z)  # Outputs: 30

# Global assignment within a function using <<-
global_var <- 100
my_function <- function() {
  global_var <<- 200  # Change the value of the global variable
}
my_function()
print(global_var)  # Outputs: 200
  • The <- operator is the most commonly used assignment operator in R, and it assigns a value to a variable.

5. Miscellaneous Operators

5.1 Colon Operator (:)

The colon operator (:) is used to create a sequence of numbers.

Example:

# Creating a sequence of numbers from 1 to 5
sequence <- 1:5
print(sequence)  # Outputs: 1 2 3 4 5
  • The colon operator creates a sequence of integers from the starting number to the ending number.

5.2 Sequence Operator (seq())

The seq() function generates a sequence of numbers with a specified step.

Example:

# Creating a sequence from 1 to 10 with a step of 2
sequence <- seq(1, 10, by = 2)
print(sequence)  # Outputs: 1 3 5 7 9
  • The seq() function allows more control over sequence generation, including step size and length.

5.3 Membership Operator (%in%)

The membership operator (%in%) is used to check if an element belongs to a vector or list.

Example:

# Checking if a value exists in a vector
vector <- c(1, 2, 3, 4, 5)
result <- 3 %in% vector
print(result)  # Outputs: TRUE

result <- 7 %in% vector
print(result)  # Outputs: FALSE
  • The %in% operator checks if a value exists within a collection of values.

5.4 Matrix Multiplication (%*%)

The matrix multiplication operator (%*%) performs matrix multiplication between two matrices.

Example:

# Matrix multiplication
matrix1 <- matrix(c(1, 2, 3, 4), nrow = 2)
matrix2 <- matrix(c(5, 6, 7, 8), nrow = 2)
result <- matrix1 %*% matrix2
print(result)  
# Outputs:
#     [,1] [,2]
# [1,]   19   22
# [2,]   43   50
  • The %*% operator is used for matrix multiplication in R.

Summary of R Operators:

Type of Operator Operators
Arithmetic Operators +, -, *, /, %%, %/%, ^, **
Relational Operators ==, !=, <, >, <=, >=
Logical Operators &, &&, `
Assignment Operators <-, ->, =, <<-
Miscellaneous Operators :, seq(), %in%, %*%

Conclusion

In R, operators play a crucial role in performing operations on variables and data.

Understanding how to use arithmetic, relational, logical, assignment, and miscellaneous operators is essential for data manipulation, mathematical calculations, and logical comparisons.

These operators make it easier to perform tasks like arithmetic calculations, data analysis, and working with conditions.

By mastering these operators, you’ll be able to write more efficient and functional R scripts.

Related posts

R Factors Tutorial with Examples

R Matrices Tutorial with Examples

R Vectors Tutorial with Examples