[Rd] dynamic creation of matrix objects (PR#7136)
Prof Brian Ripley
ripley at stats.ox.ac.uk
Tue Jul 27 22:09:04 CEST 2004
PLEASE read the FAQ about BUGS. R-bugs is not for users to report their
own lack of understanding, and not for questions.
Take a look at
> parse(text=paste(tName,"Mat <-",aMat,sep=""))
expression(thatMat <- 1, thatMat <- 2, thatMat <- 3, thatMat <- 4,
thatMat <- 5, thatMat <- 6, thatMat <- 7, thatMat <- 8)
The bug is in your understanding of your own code, which is working
correctly. What do you really want to do here?
assign(paste(tName,"Mat", sep=""), aMat)
perhaps?
On Tue, 27 Jul 2004 cliff at research.telcordia.com wrote:
> I am trying to assign the values in a matrix to an object whose name is
> created dynamically, i.e., using eval-parse-text-paste sequence. It
> seems that only the very last value in the matrix is assigned to the new
> object. I have included an example below where I create a matrix object
> called "aMat". I can assign the contents of aMat to another object
> called "thisMat." However, when I attempt to make a similar assignment
> to a new object called "thatMat", only the last value is returned, when
> queried. Does anybody know whether this is a bug...or am I doing
> something wrong?
>
> Cliff Behrens
>
> > aMat<- matrix(c(1,2,3,4,5,6,7,8),ncol=2)
> > aMat
> [,1] [,2]
> [1,] 1 5
> [2,] 2 6
> [3,] 3 7
> [4,] 4 8
> > thisMat<- aMat
> > thisMat
> [,1] [,2]
> [1,] 1 5
> [2,] 2 6
> [3,] 3 7
> [4,] 4 8
> > tName<-"that"
> > eval(parse(text=paste(tName,"Mat <-",aMat,sep="")))
> > thatMat
> [1] 8
> >
>
> ______________________________________________
> R-devel at stat.math.ethz.ch mailing list
> https://www.stat.math.ethz.ch/mailman/listinfo/r-devel
>
>
--
Brian D. Ripley, ripley at stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-devel
mailing list