5

inst/extdata にファイル helper.RData ファイルがあります。このファイルには、パッケージ内の関数で使用される変数とデータセットが含まれていますが、ユーザーがアクセスするためのものではありません。

次を使用して、パッケージの最初にロードします。

load(system.file("extdata","helper.RData", package = "mypackage"))

ファイルが大きいため、これにはかなりの時間がかかり、開発中は特に面倒です (私はパッケージload_all()から関数をかなり略奪します)。devtools

実際に必要なときにのみファイルがロードされるように、遅延ロードすることをお勧めします。

どうやってやるの?

4

1 に答える 1

5

データを遅延ロードする前に、遅延ロードをサポートするデータベースに変数を保存する必要があります。

tools:::makeLazyLoadDB 関数を使用して、後で関数を使用してこれを行うことができますlazyLoad

遅延ロード データベースを作成します。変数 X と Y があるとします。これらを含む環境を作成する必要があります。

e=new.env(parent=emptyenv())
e$X = X
e$Y = Y

次に、データベースを作成します。

tools:::makeLazyLoadDB(e,"DBNAME")

もちろん変更できますDBNAME

を使用して R にインポートできますlazyLoad("DBNAME")

于 2014-02-06T09:26:46.867 に答える