Skip to content
Prev 255539 / 398506 Next

How to paste a vector of expressions and a character vector?

On Apr 1, 2011, at 1:56 PM, Marius Hofert wrote:

            
lls <-c("a", "tilde(b)","c")
  mains <- bquote(.(parse(text=paste(lls,"~",nns,sep=""))) )
  mains

#expression(a~1, tilde(b)~2, c~3)
#attr(,"srcfile")
<text>
attr(,"wholeSrcref")
a~1
tilde(b)~2
c~3
#-----

 > mains[2]
#expression(tilde(b)~2)


plot(0,0, main=mains[2])


This would also work:

 > mains2 <- as.expression(parse(text=paste(lls,"~",nns,sep="")))
 > mains2
expression(a~1, tilde(b)~2, c~3)
attr(,"srcfile")
<text>
attr(,"wholeSrcref")
a~1
tilde(b)~2
c~3

I try to avoid using spaces in expressions and instead use "~"'s   
because I don't really understand how spaces get parsed in expression  
operations, and I do know how plotmath operations work with "~".
David Winsemius, MD
West Hartford, CT