Marius Hofert
2011-Apr-01 16:32 UTC
[R] How to paste a vector of expressions and a character vector?
Dear expeRts, I know I can't paste expressions in the normal way, but I just couldn't figure out how to get the following (I want to paste a character vector to an expression vector) right with bquote() or substitute. vec1 <- c("a", expression(tilde(b)), "c") vec2 <- c("1", "2", "3") main <- as.expression(paste(vec1, vec2)) plot(0,0, main=main[2]) Cheers, Marius
David Winsemius
2011-Apr-01 17:22 UTC
[R] How to paste a vector of expressions and a character vector?
On Apr 1, 2011, at 12:32 PM, Marius Hofert wrote:> Dear expeRts, > > I know I can't paste expressions in the normal way, but I just > couldn't figure out > how to get the following (I want to paste a character vector to an > expression vector) > right with bquote() or substitute. > > vec1 <- c("a", expression(tilde(b)), "c") > vec2 <- c("1", "2", "3") > main <- as.expression(paste(vec1, vec2)) > plot(0,0, main=main[2])Do not use `paste` ... it coerces your expression to a character value ... use `c` instead: > main <- as.expression(c(vec1, vec2)) > plot(1,1, main=main[2]) And then, even the as.expression is superfluous: > main <- c(vec1, vec2) > plot(1,1, main=main[2]) -- David Winsemius, MD West Hartford, CT