[R] Combine by columns a vector with another vector that is constant across rows

Viechtbauer, Wolfgang (SP) wolfg@ng@viechtb@uer @ending from m@@@trichtuniver@ity@nl
Tue Jul 3 15:28:45 CEST 2018


Hi All,

I have one vector that I want to combine with another vector and that other vector should be the same for every row in the combined matrix. This obviously does not work:

vec <- c(2,4,3)
cbind(1:5, vec)

This does, but requires me to specify the correct value for 'n' in replicate():

cbind(1:5, t(replicate(5, vec)))

Other ways that do not require this are:

t(sapply(1:5, function(x) c(x, vec)))
do.call(rbind, lapply(1:5, function(x) c(x, vec)))
t(mapply(c, 1:5, MoreArgs=list(vec)))

I wonder if there is a simpler / more efficient way of doing this.

Best,
Wolfgang



More information about the R-help mailing list