- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
How to add a vector to each row of a matrix in R?
To add a vector to reach row of a matrix, we can use addition sign (+) and create the repetition of the vector up to the number of rows in the matrix. For example, if we have a matrix called M then a vector say v can be added to each row of M by using the command −
M+rep(v,each=nrow(M))
Example1
Consider the below matrix and the vector −
> M1<-matrix(rpois(40,2),nrow=20) > M1
Output
[,1] [,2] [1,] 3 2 [2,] 3 3 [3,] 4 2 [4,] 5 1 [5,] 3 1 [6,] 2 2 [7,] 1 2 [8,] 2 1 [9,] 3 2 [10,] 0 1 [11,] 3 4 [12,] 2 6 [13,] 3 1 [14,] 4 0 [15,] 1 3 [16,] 1 0 [17,] 1 1 [18,] 0 1 [19,] 1 3 [20,] 2 0
Adding v1 to rows in M1 −
> M1+rep(v1,each=nrow(M1))
Output
[,1] [,2] [1,] 4 3 [2,] 4 4 [3,] 5 3 [4,] 6 2 [5,] 4 2 [6,] 3 3 [7,] 2 3 [8,] 3 2 [9,] 4 3 [10,] 1 2 [11,] 4 5 [12,] 3 7 [13,] 4 2 [14,] 5 1 [15,] 2 4 [16,] 2 1 [17,] 2 2 [18,] 1 2 [19,] 2 4 [20,] 3 1
Example2
> M2<-matrix(rnorm(60),ncol=3) > M2
Output
[,1] [,2] [,3] [1,] -1.16459899 0.04276452 -0.38747561 [2,] 0.50198231 1.40818681 1.34047754 [3,] -0.83571273 0.15311835 -0.66026732 [4,] -1.04751005 0.68401101 0.36614494 [5,] -0.13906013 -0.08104307 1.58938567 [6,] 0.79923477 0.13871823 1.19483957 [7,] -0.70957734 -1.22610985 0.79431236 [8,] -0.61919335 -1.67900016 0.75673298 [9,] 0.02131366 0.59198453 -0.51860397 [10,] -0.92114971 -0.94043054 -0.66674705 [11,] -0.26933585 0.61537773 1.18988144 [12,] 2.11994998 -0.62014441 -0.97012363 [13,] -0.45798423 0.92096389 0.74603167 [14,] -0.51599135 -0.01450992 -1.84365984 [15,] -0.29866554 0.99900886 -0.55598877 [16,] -0.91226758 -1.63915166 -0.20200339 [17,] 0.40107684 1.79162856 -0.02759807 [18,] 0.44712300 -0.07322323 -0.15221520 [19,] 0.15838286 -1.50611267 -0.07117655 [20,] 0.53166819 -0.99748658 -0.54070065 > v2<-c(100,100,100)
Adding v2 to rows in M2 −
> M2+rep(v2,each=nrow(M2))
Output
[,1] [,2] [,3] [1,] 98.83540 100.04276 99.61252 [2,] 100.50198 101.40819 101.34048 [3,] 99.16429 100.15312 99.33973 [4,] 98.95249 100.68401 100.36614 [5,] 99.86094 99.91896 101.58939 [6,] 100.79923 100.13872 101.19484 [7,] 99.29042 98.77389 100.79431 [8,] 99.38081 98.32100 100.75673 [9,] 100.02131 100.59198 99.48140 [10,] 99.07885 99.05957 99.33325 [11,] 99.73066 100.61538 101.18988 [12,] 102.11995 99.37986 99.02988 [13,] 99.54202 100.92096 100.74603 [14,] 99.48401 99.98549 98.15634 [15,] 99.70133 100.99901 99.44401 [16,] 99.08773 98.36085 99.79800 [17,] 100.40108 101.79163 99.97240 [18,] 100.44712 99.92678 99.84778 [19,] 100.15838 98.49389 99.92882 [20,] 100.53167 99.00251 99.45930
- Related Articles
- How to find the row and column position of a value as vector in an R matrix?
- How to extract the first row of each matrix stored in a list in R?
- How to multiply a matrix with a vector in R?
- How to convert a vector into matrix in R?
- How to replicate a vector to create matrix in R?
- How to find the row products for each row in an R matrix?
- How to extract a data.table row as a vector in R?
- How to add zero before a vector in R?
- How to multiple a matrix rows in R with a vector?
- How to convert a vector into a diagonal matrix in R?
- How to convert a text vector into a matrix in R?
- How to multiply corresponding row values in a matrix with single row matrix in R?
- How to find the row product of a matrix in R?
- How to multiply each element of a larger vector with a smaller vector in R?
- How to convert the row values in a matrix to row percentage in R?

Advertisements