[R] Displaying environment differences
Barry Rowlingson
B.Rowlingson at lancaster.ac.uk
Tue Sep 28 11:56:07 CEST 2004
Sometimes after playing around in R for a while, I find myself thinking,
"What have I done?". Which boils down to "What's the difference between
the objects I currently have in my R session and those that were loaded
from my .RData when I started R".
So I bashed this out in five minutes, just to test the principles.
differ <- function(file){
load(file)
inFile <- ls()
inMemory <- ls(1)
inBoth <- inFile[inFile %in% inMemory]
for(thing in inBoth){
if(identical(get(thing,1),get(thing))){
cat(paste("Object :",thing," identical\n"))
}else{
cat(paste("Object :",thing," changed\n"))
}
}
list(inFile,inMemory,inBoth)
}
Eventually I'd make it display objects only in the .RData (these would
be things deleted since load), only in environment 1 (things newly
created since load), those in both but unchanged, and those in both yet
changed.
But then I thought, "Hey, its coffee time, lets see if anyone on
R-help has done this already and when I get back refreshed it'll be done".
I'm also not sure if 'get()'ting the things is the right thing to do.
Barry
More information about the R-help
mailing list