Environments are one of a few R object types (connections are another) for which saving and loading aren't exact inverses.
e <- new.env()
f <- e
identical(e,f)
# [1] TRUE
save("f", file="f.Rdata")
rm(f)
load("f.Rdata")
identical(e,f)
# [1] FALSE
ExpressionSet
objects contain an assayData
slot, of class AssayData
, which is described as a "container class defined as a class union of list
and environment
". Though I don't have eset installed on my computer, I'd guess that the assayData
slots of eset
and e2
make reference to different environments, causing identical(eset, e2)
to return FALSE
.