cbind question, please
On 24/04/15 10:41, Erin Hodgess wrote:
Hello!
I have a cbind type question, please: Suppose I have the following:
dog <- 1:3
cat <- 2:4
tree <- 5:7
and a character vector
big.char <- c("dog","cat","tree")
I want to end up with a matrix that is a "cbind" of dog, cat, and tree.
This is a toy example. There will be a bunch of variables.
I experimented with "do.call", but all I got was
1
2
3
I don't understand how you managed to get *that*. When I did the
"obvious" thing --- do.call(cbind,as.list(big.char)) --- I got
(as expected :-) )
[,1] [,2] [,3]
[1,] "dog" "cat" "tree"
Any suggestions would be much appreciated. I still think that do.call might be the key, but I'm not sure. R Version 3-1.3, Windows 7.
do.call(cbind,lapply(big.char,get,envir=.GlobalEnv)) Note: I had to throw in the specification of "envir" otherwise get() got the cat() function from "base" rather than your vector "cat". Probably not a problem for your real application; shouldn't hurt, but. Another salutary example of why it's not a good idea to give data sets names that are names of R built-ins. cheers, Rolf
Rolf Turner Technical Editor ANZJS Department of Statistics University of Auckland Phone: +64-9-373-7599 ext. 88276 Home phone: +64-9-480-4619