
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Subtract All Values in a Vector from Another Vector in R
To subtract all values in a vector from all values in another vector in R, we can use sapply function with subtraction sign.
For Example, if we have two vectors say X and Y and we want to subtract all values in Y from all values in X then we can use the command given below −
sapply(X,"-",Y)
Example 1
Following snippet creates a sample data frame −
x1<-1:10 y1<-10:1 sapply(x1,"-",y1)
Output
If you execute the above given snippet, it generates the following Output −
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [1,] -9 -8 -7 -6 -5 -4 -3 -2 -1 0 [2,] -8 -7 -6 -5 -4 -3 -2 -1 0 1 [3,] -7 -6 -5 -4 -3 -2 -1 0 1 2 [4,] -6 -5 -4 -3 -2 -1 0 1 2 3 [5,] -5 -4 -3 -2 -1 0 1 2 3 4 [6,] -4 -3 -2 -1 0 1 2 3 4 5 [7,] -3 -2 -1 0 1 2 3 4 5 6 [8,] -2 -1 0 1 2 3 4 5 6 7 [9,] -1 0 1 2 3 4 5 6 7 8 [10,] 0 1 2 3 4 5 6 7 8 9
Example 2
Following snippet creates a sample data frame −
x2<-sample(0:9,10) x2
If you execute the above given snippet, it generates the following Output −
[1] 2 3 0 8 5 6 9 4 1 7
To subtract all values in a vector from all values in another vector in R, add the following code to the above snippet −
x2<-sample(0:9,10) y2<-sample(0:9,20,replace=TRUE) y2
If you execute the above given snippet, it generates the following Output −
[1] 9 9 6 9 7 1 8 3 6 4 8 5 2 0 0 9 9 3 2 2
To subtract all values in a vector from all values in another vector in R, add the following code to the above snippet −
x2<-sample(0:9,10) y2<-sample(0:9,20,replace=TRUE) sapply(x2,"-",y2)
Output
If you execute all the above given snippets as a single program, it generates the following Output −
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [1,] -7 -6 -9 -1 -4 -3 0 -5 -8 -2 [2,] -7 -6 -9 -1 -4 -3 0 -5 -8 -2 [3,] -4 -3 -6 2 -1 0 3 -2 -5 1 [4,] -7 -6 -9 -1 -4 -3 0 -5 -8 -2 [5,] -5 -4 -7 1 -2 -1 2 -3 -6 0 [6,] 1 2 -1 7 4 5 8 3 0 6 [7,] -6 -5 -8 0 -3 -2 1 -4 -7 -1 [8,] -1 0 -3 5 2 3 6 1 -2 4 [9,] -4 -3 -6 2 -1 0 3 -2 -5 1 [10,] -2 -1 -4 4 1 2 5 0 -3 3 [11,] -6 -5 -8 0 -3 -2 1 -4 -7 -1 [12,] -3 -2 -5 3 0 1 4 -1 -4 2 [13,] 0 1 -2 6 3 4 7 2 -1 5 [14,] 2 3 0 8 5 6 9 4 1 7 [15,] 2 3 0 8 5 6 9 4 1 7 [16,] -7 -6 -9 -1 -4 -3 0 -5 -8 -2 [17,] -7 -6 -9 -1 -4 -3 0 -5 -8 -2 [18,] -1 0 -3 5 2 3 6 1 -2 4 [19,] 0 1 -2 6 3 4 7 2 -1 5 [20,] 0 1 -2 6 3 4 7 2 -1 5
Example 3
Following snippet creates a sample data frame −
x3<-rpois(2,5) x3
If you execute the above given snippet, it generates the following Output −
[1] 5 2
To subtract all values in a vector from all values in another vector in R, add the following code to the above snippet −
x3<-rpois(2,5) y3<-rpois(20,1) y3
If you execute the above given snippet, it generates the following Output −
[1] 0 1 1 0 0 0 1 1 1 0 0 0 2 1 0 1 2 0 1 1
To subtract all values in a vector from all values in another vector in R, add the following code to the above snippet −
x3<-rpois(2,5) y3<-rpois(20,1) sapply(x3,"-",y3)
Output
If you execute all the above given snippets as a single program, it generates the following Output −
[,1] [,2] [1,] 5 2 [2,] 4 1 [3,] 4 1 [4,] 5 2 [5,] 5 2 [6,] 5 2 [7,] 4 1 [8,] 4 1 [9,] 4 1 [10,] 5 2 [11,] 5 2 [12,] 5 2 [13,] 3 0 [14,] 4 1 [15,] 5 2 [16,] 4 1 [17,] 3 0 [18,] 5 2 [19,] 4 1 [20,] 4 1
Example 4
Following snippet creates a sample data frame −
x4<-sample(1:20,5) x4
If you execute the above given snippet, it generates the following Output −
[1] 15 4 9 8 3
To subtract all values in a vector from all values in another vector in R, add the following code to the above snippet −
x4<-sample(1:20,5) y4<-sample(1:20,15) y4
If you execute the above given snippet, it generates the following Output −
[1] 19 16 1 9 8 4 2 12 3 18 13 5 20 10 6
To subtract all values in a vector from all values in another vector in R, add the following code to the above snippet −
x4<-sample(1:20,5) y4<-sample(1:20,15) sapply(x4,"-",y4)
Output
If you execute all the above given snippets as a single program, it generates the following Output −
[,1] [,2] [,3] [,4] [,5] [1,] -4 -15 -10 -11 -16 [2,] -1 -12 -7 -8 -13 [3,] 14 3 8 7 2 [4,] 6 -5 0 -1 -6 [5,] 7 -4 1 0 -5 [6,] 11 0 5 4 -1 [7,] 13 2 7 6 1 [8,] 3 -8 -3 -4 -9 [9,] 12 1 6 5 0 [10,] -3 -14 -9 -10 -15 [11,] 2 -9 -4 -5 -10 [12,] 10 -1 4 3 -2 [13,] -5 -16 -11 -12 -17 [14,] 5 -6 -1 -2 -7 [15,] 9 -2 3 2 - 3