49

私の質問のtl; drバージョン

パッケージをインポートしたい場合import()、NAMESPACE ファイルにディレクティブを手動で書き込む必要がありますか? 説明に「インポート:」としてリストされていても、roxygen2 は魔法のようにそれをしないようです。

フルバージョン

これはかなりばかげた質問ですが、答えが私には明らかではないので質問します。

Rパッケージのドキュメントroxygen2を処理するために使用します。関数がエクスポートされていることを確認したい場合は、roxygen ブロックにタグを追加します。の後続の実行では、それに応じて NAMESPACE ディレクティブが書き込まれます。@exportroxygenize()

しかし、私のパッケージは現在、他のいくつかをインポートしています:

Depends:
    R (>= 2.13.0),
    ggplot2 (>= 0.8.9)
Imports:
    RColorBrewer,
    plyr,
    gridExtra

は、エクスポートされた関数の NAMESPACE ディレクティブをroxygen2 書き換えますが、DESCRIPTION でインポートする必要があると指定したパッケージを反映するように NAMESPACE を自動的に書き換えることはないようです。

4

1 に答える 1

45

namespace私のコメントを拡張して、パッケージ/関数のディレクティブを自動的に追加したい場合は、関数のドキュメントヘッダーにまたは行をimport追加することで追加できます。@imports package@importFrom package functionroxygen2

ただし、@ hadleyが指摘したように、それはを変更するだけでNAMESPACE、パッケージには影響しません。DESCRIPTION

于 2011-12-25T15:47:27.673 に答える