I am trying to create a vector of character strings in R using a loop, but am having some trouble. I'd appreciate any help anyone can offer.
The code I'm working with is a bit more detailed, but I've tried to code a reproducible example here which captures all the key bits:
vector1<-c(1,2,3,4,5,6,7,8,9,10)
vector2<-c(1,2,3,4,5,6,7,8,9,10)
thing<-character(10)
for(i in 1:10) {
line1<-vector1[i]
line2<-vector2[i]
thing[i]<-cat(line1,line2,sep="\n")
}
R then prints out the following:
1
1
Error in thing[i] <- cat(line1, line2, sep = "\n") :
replacement has length zero
What I'm trying to achieve is a character vector where each character is split over two lines, such that thing[1]
is
1
1
and thing[2]
is
2
2
and so on. Does anyone know how I could do this?
cat
prints to the screen, but it returnsNULL
- to concatenate to a new character vector, you need to usepaste
:For example in an interactive terminal:
Though note that in your case, the entire for loop could just be replaced with the more concise and efficient line: