Re: [R] How to get a list work in RData file

From: Liaw, Andy <andy_liaw_at_merck.com>
Date: Tue 16 Aug 2005 - 10:47:43 EST


If you want to keep track of the function call that produced an object, usually you need to do that inside the function that's being called, e.g.,

> test.xy <- function(x,y) {

+     xy <- x+y
+     attr(xy, "Call") <- match.call()
+     xy
+ }

> xyadd <- test.xy(x=2, y=3)
> xyadd
[1] 5
attr(,"Call")
test.xy(x = 2, y = 3)
> str(xyadd)

 atomic [1:1] 5

Andy

> From: Xiyan Lon
>
> Dear R-Helper,
> I want to know how I get a list work which I saved in RData
> file. For
> example,
>
> > test.xy <- function(x,y) {
> + xy <- x+y
> + xy
> + }
> >
> > xyadd <- test.xy(x=2, y=3)
> > xyadd
> [1] 5
> > x1 <- c(2,43,60,8)
> > y1 <- c(91,7,5,30)
> >
> > xyadd1 <- test.xy(x=x1, y=y1)
> > xyadd1
> [1] 93 50 65 38
> > save(list = ls(all=TRUE), file = "testxy.RData")
> > rm(list=ls(all=TRUE))
> > load("C:/R/useR/testxy.RData")
> > ls()
> [1] "test.xy" "x1" "xyadd" "xyadd1" "y1"
> >
> > ls.str(pat="xyadd")
> xyadd : num 5
> xyadd1 : num [1:4] 93 50 65 38
> >
>
> When I run, I know the result like above
> > xyadd
> [1] 5
> > xyadd1
> [1] 93 50 65 38
> >
> what I want to know, is there any function to make the result like:
>
> > xyadd
>
> test.xy(x=2, y=3)
>
> and
>
> > xyadd1
>
> test.xy(x=x1, y=y1)
>
> Best,
> Xiyan Lon
>
> ______________________________________________
> R-help@stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide!
> http://www.R-project.org/posting-guide.html
>
>
>



R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Tue Aug 16 11:01:44 2005

This archive was generated by hypermail 2.1.8 : Fri 03 Mar 2006 - 03:39:49 EST