R Tutorial R Charts & Graphs R Statistics R References

R - division operator example



The example below shows the usage of division(/) operator in different scenarios.

Dividing by a scalar

If a vector or a matrix is divided by a scalar (single element atomic vector), then each element of it is divided by the given scalar.

#first operand
x1 <- 10
v1 <- c(10, 20, 30)
m1 <- matrix(c(10, 20, 30, 40, 50, 60), nrow=2)

#second operand
x2 <- 5

#dividing two scalars
print(x1 / x2)
#dividing a vector by a scalar
print(v1 / x2)
#dividing a matrix by a scalar
cat("\n")
print(m1 / x2)

The output of the above code will be:

[1] 2
[1] 2 4 6

     [,1] [,2] [,3]
[1,]    2    6   10
[2,]    4    8   12

Dividing by a vector

When a vector is divided by another vector, their length should be same or length of longer vector should be multiple of length of shorter vector. Similarly, when a matrix is divided by a vector, the length of longer object should be multiple of length of shorter object.

Please note that, When a matrix is divided by a vector, elements are divided column-wise.

#first operand
x1 <- 10
v1 <- c(10, 20, 30)
m1 <- matrix(c(10, 20, 30, 40, 50, 60), nrow=2)

#second operand
v2 <- c(5, 6, 7)

#dividing a scalar (single element 
#atomic vector) by a vector
print(x1 / v2)
#dividing two vectors
print(v1 / v2)
#dividing a matrix by a vector
cat("\n")
print(m1 / v2)

The output of the above code will be:

[1] 2.000000 1.666667 1.428571
[1] 2.000000 3.333333 4.285714

         [,1]     [,2]     [,3]
[1,] 2.000000 4.285714 8.333333
[2,] 3.333333 8.000000 8.571429

Dividing by a matrix

When a matrix is divided by another matrix, their dimension should be same or dimension of bigger matrix should be multiple of dimension of smaller matrix.

#first operand
x1 <- 10
v1 <- c(10, 20, 30)
m1 <- matrix(c(10, 20, 30, 40, 50, 60), nrow=2)

#second operand
m2 <- matrix(c(1, 2, 3, 4, 5, 6), nrow=2)

#dividing a scalar (single element 
#atomic vector) by a matrix
print(x1 / m2)
#dividing a vector by a matrix
cat("\n")
print(v1 / m2)
#dividing two matrices
cat("\n")
print(m1 / m2)

The output of the above code will be:

     [,1]     [,2]     [,3]
[1,]   10 3.333333 2.000000
[2,]    5 2.500000 1.666667

     [,1] [,2] [,3]
[1,]   10 10.0    4
[2,]   10  2.5    5

     [,1] [,2] [,3]
[1,]   10   10   10
[2,]   10   10   10

❮ R - Operators

5