On Fri, 16 Jan 2004, Giampiero Salvi wrote (in reply to some unidentified
helper):
> Thanks for your answer,
>
> > Yes, that will create two copies. What is it you want to do with the data?
> > Do you want the capability of both of them changing the data? What type of
> > processing are you going to do?
>
> The data should be read only (and all the objects share the same data values).
If the data are read only it is likely that R will *not* create two
copies, eg try
a<-list(x=rnorm(1e6))
gc()
b<-a$x
d<-a$x
gc()
b<-b+1
d<-d+1
gc()
>
> > One way is to store the 'name' of the object in the location and then use
> > 'get/assign' to reference the data:
> >
> > obj1$dist <- 'dist'
> > obj2$dist <- 'dist'
> >
> > my.sum <- sum(get(obj1$data))
> > assign(obj1$data, new.values)
>
This won't work any better. get(obj1$data) will get the object, and
there's no reason to expect that it's less likely to get a copy than
simple assignment is.
-thomas
______________________________________________
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html