[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