Try using do.call: do.call(list, as.list(mycommand))
On Mon, Jan 12, 2009 at 1:58 PM, Skotara <nils.skot...@uni-hamburg.de>wrote: > Thank you Patrick and Gabor! > Sorry, I think I have not explainend it well. > The purpose is as follows: > names <- letters[1:3] > values <- data.frame(a = 1:3, b = 4:6, c = 7:9) > With more complicated objects similar to 'names' and 'values' I wrote the > following line to assign the elements of the list: > mycommand <- parse(text = paste(names, " = values[\"", names, "\"]", > sep="") ) > However, > list(eval(mycommand)) > does not do what I want. > whereas > list(a = values["a"], b = values["b"], c = values["c"]) > does. > > I can not tell why... > I try to understand, what expression and eval do. I know that many times > there are other ways to achieve the same goal. > So here, too. But I think there should be a reason why it does not work > that way. > > > Best regards! > Nils > > ______________________________________________ > R-help@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > -- Henrique Dallazuanna Curitiba-Paraná-Brasil 25° 25' 40" S 49° 16' 22" O [[alternative HTML version deleted]]
______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.