5

という名前の大きなExpressionSetオブジェクト ( Bioconductor ) がありesetます。なぜこれが起こるのか説明できますか?保存/ロード後にオブジェクトのコピーが元のコピーと同一でないのはなぜですか?

> e2=eset
> identical(e2,eset)
[1] TRUE
> save(e2,file="test.RData")
> rm(e2)
> e2 # just to check the removal
Error: object 'e2' not found
> load("test.RData")
> identical(e2,eset)
[1] FALSE

2 つのオブジェクトの同一性を確認する他の方法はありますか?

必要に応じて、Windows 7 で R 2.15.1 を使用しています。

4

1 に答える 1

8

環境は、保存と読み込みが完全に逆ではない数少ない R オブジェクト タイプの 1 つです (接続は別のタイプです)。

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オブジェクトassayDataには class のスロットが含まれており、これは「とAssayDataのクラス ユニオンとして定義されたコンテナ クラス」として記述されています。私のコンピューターにはesetがインストールされていませんが、とのスロットが異なる環境を参照しているため、.listenvironmentassayDataesete2identical(eset, e2)FALSE

于 2013-03-28T17:38:20.633 に答える