問題タブ [roxygen2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - roxygen2がDESCRIPTIONファイルを完全に更新していません
Roxygen2にはないので、 Roxygen2rlandscape
を使用して、プレーンなRoxygenビネットに従おうとしています。
ビネット(3ページ)のようにrlandscape-package.R
、パッケージのドキュメントのみを含むというファイルを作成しました。ビネットでは、彼らは言います
各Roxygen記述ブロックの後には、特定の関数の代わりにファイルまたはパッケージを記述するヘッダー資料でさえ、ステートメントが続く必要があります。roxygen()は、そのような場合を代用するNOOP(nullステートメント)として提供されます。
しかし、descriptionブロックroxygen()
の後にを呼び出してをpackage.skeleton
生成するとしますError in eval(expr, envir, enclos) : could not find function "roxygen"
。だから私はroxygen()
呼び出しを完全に省略し、それをに置き換えることを試みましたがNA
、どちらも同じ結果をもたらすようです:package.skeleton()
正常に動作し(引数rlandscape-package.R
の1つとしても含む)、それから私はできますcode_files
roxygenize
これは正常に実行されているように見えますが、DESCRIPTIONファイルには「Collate」フィールドが追加されていますが、それ以外はpackage.skeleton
作成されたものから変更されていません。説明ファイルの残りの部分が更新されないのはなぜですか?
r - roxygen2 を使用したデータセットの文書化
roxygen2 を使用して、R パッケージ内のいくつかのデータセットを文書化しようとしています。これらのうちの1つだけを考慮してください:
- 私は持っている
mypkg/data/CpG.human.GRCh37.RDa
- と呼ばれるオブジェクトを含む
CpG.human.GRCh37
と呼ばれるファイル:
/li>mypkg/R/cpg-data.R
には、以下が含まれます。
私がroxygenizeすると、これが作成されmypkg/man/CpG.human.GRCh37.Rd
、以下が含まれます:
export(CpG.human.GRCh37)
ファイルが追加されますNAMESPACE
。
しかし、私R CMD CHECK
が得たとき:
このデータセットの場所を R に伝えたことはありませmypkg/data/<name>.RDa
んが、最初の推測としては適切だと思います。どんなヒントも素晴らしいでしょう。
Hadley が見ていると、\usage セクションが作成されておらず、@usage ディレクティブが無視されていることに気付きます。
R 2.13.1でroxygen-2.2.2を使用しています
r - roxygen2 +cygwin+デフォルトパラメータ=切り捨てられた`\usage`セクション
Linuxで開発してきたRのパッケージがあり、Windowsでテストするのは恐ろしい時期です。
ドキュメントはroxygenを使用して作成されており、私はcygwinを使用してパッケージをビルドしています。
問題は、私がroxygenise('test-package')
、roxygen\usage
がドキュメントのセクションを1文字に切り捨てることです。これは私の機能のすべてではありませんが一部に対して行われ、パターンを理解できません。
これは、LinuxまたはWindowsで同じコマンド(つまり、Rプロンプトから)を実行した場合には発生しませんroxygenise('test-package')
-WindowsではCygwinだけです(R devtools + Windowsからのコマンドプロンプトを使用することは私にとってオプションではありません-これは、Makefilesを使用した大きなプロジェクトの一部です等)。
すべての場合において、私はroxygenv2.2.2を使用しています。
アップデート:
これは、デフォルトのパラメータを持つすべての関数で発生するようです。
私はそれを1つの再現可能な例に要約し、問題を切り分けるために可能な限り切り詰めました。
Rから:
/li>(test / Rで)変更
/li>trim.R
し、次のroxygenを上部に追加して、ファイルが次のようになるようにします。Rを実行し、ドキュメントを生成します。
/li>結果の
/li>trim.Rd
ファイルを(test / manで)見てください:
どうやって\usage{t}
??
もちろん、実行R CMD check
すると、文書化された引数がに表示されないというエラーが発生しますが、\usage
これ\usage
は切り捨てられたためです。
なぜこれが発生するのか、どうすれば回避できるのか誰かが知っていますか?おそらくroxygen2
、Mac、Windows、Linuxで動作するが、Cygwinでは動作しないものに依存しているものはありますか?
乾杯(私はこれで髪を引き裂いてきました)。
アップデート#2:
私は、Windows R(つまりの1つC:/Program Files/R/R-2.14.2/bin
)ではなく、CygwinのパッケージマネージャーからインストールされたRを使用しています-WindowsRがCygwinで動作することに気づいていませんでした。
CygwinでWindowsRを使用すると、バグはなくなります。CygwinでCygwinRを使用すると、バグが発生します。
これは、roxygen2とは対照的に、CygwinRに関連するいくつかのバグであると推測できます。
今のところ、cygwin内でWindows Rを使用する回避策を使用します(実際、これができることがわかったので、とにかくCygwin Rは必要ありません!)。
r - install_github がエラーを返す: zip ファイルを開けません
次を実行すると:
次のエラーが表示されます。
devtools 0.51 の場合:
より新しいバージョン (0.6) の devtools をインストールしました。install_github('devtools')
エラーはより有益ですが、似ています:
私は何か間違ったことをしていますか?
r - Roxygenを使用して同じファイルに2つのS3メソッドを文書化する
Rd
S3ジェネリック(別のパッケージで定義されている)には密接に関連する2つのメソッドがあるため、同じファイルにそれらを文書化したいと思いました。ただし、引数を個別にドキュメント化すると、R CMD check
「ドキュメントオブジェクトの\argumentエントリが重複している」という警告が表示されます。
最初の引数data
は、ジェネリックが定義するものであるためでなければなりません。ただし、それが異なるクラスでなければならないという理由だけで、それに関するドキュメントはメソッドごとに異なります。このために2つの別々のドキュメントファイルを作成することもできますが、それらは密接に結合されているため、一緒に保持したいと思います。最初の呼び出しですべての可能なクラスをリストdata
し、後続のクラスには何も含まない可能性がありますが、これは、Roxygenのポイントのようにすべてをまとめるのではなく、最初の関数で2番目の関数を文書化することを意味します。
複数のメソッドから(引数を複製せずに)合法的なものを作成するためにroxygenを取得することは可能ですか?そうでない場合、このシナリオを処理するための最良の方法は何ですか?
r - roxygen2とBibTeXを使用してRパッケージの記事を引用しますか?
Rパッケージを文書化するためのツールとしてroxygen2を使用していますが、roxygen2に@referencesタグがあることがわかりましたが、これは自由形式のテキストのみを受け入れるようです。@bibliographと@citeのタグが付いたroxygenに関するプレゼンテーションを見つけましたが、roxygen2にはそのようなものがないというのは正しいですか?
次に、どういうわけか、bibtexファイルから参照を取り出して、@ referenceタグの直後に適切な形式で手動で書き込む必要がありますか、それともこれを行うためのより賢い方法がありますか?複数の関数/rdファイルについて、引用する必要のある約7つの異なる記事があります。
r - RStudio は関数の roxygen テンプレートを自動的に生成できますか?
RStudio は自動化された roxygen テンプレートの作成をサポートしていますか?
Emacs-ESS ではC-x C-o
、関数の roxygen テンプレートを生成します。たとえば、これは自動的に変換されます。
これに:
RStudio 内に同様の機能はありますか?
アップデート
- ESS 12.09-2の時点で、コマンドは次のように変更されました。
C-c C-o C-o
- この機能は Rstudio に実装されています: CTRL+ALT+SHIFT+R
r - R CMD チェック警告: ドキュメント オブジェクトで使用されている関数/メソッド ... コードでは使用されていません
パッケージを作成していますが、1 つのR CMD check
警告が表示され、パッケージを完成させて CRAN に投稿することができません。roxygen2
エラーの根本的な原因ではない可能性がありますが、インライン ドキュメントに使用します。
この警告を削除する方法がわかっている場合は、roxygen2
.
パッケージ チェックから警告を削除するにはどうすればよいですか?Functions/methods with usage in documentation object ... but not in code
R CMD check
警告:
関数とroxygen
ドキュメント:
結果の.rd
ドキュメント ファイル:
ベースRのドキュメントとドキュメントをクロスチェックしましたが、names<-
同一のようです:
関連する質問(しかし、私はすでに提案を実装していますが、まだ運がありません):
どこが間違っていますか?この警告をパッケージ チェックから削除するにはどうすればよいですか?
r - Roxygen2 でデータをエクスポートして、data() を必要とせずに使用できるようにする
この SO question on documenting a data set with Roxygenなどの質問を読んだ後、データセット (これを と呼びます) を文書化することができましcells
た。この後、を実行すると が表示されます。data(package="mypackage")
data(cells)
cells
ls()
ただし、多くのパッケージでは、データはdata()
呼び出しを必要とせずにすぐに利用できます。また、実行時にデータ名が表示されませんls()
。例として、baseball
に付属のデータ セットがありplyr
ます。のソースを見ましたが、plyr
これがどのように行われるかわかりません。
r - roxygen2 を使用して例を実行しない方法は?
私は現在、Bing Maps キーを持つことに依存するジオコーディング関数を作成しています。明らかに、私は自分のものを公開したくありません。例は公開しないと失敗します。
ユーザーが手動で実行するための例を含めるにはどうすればよいR CMD check
ですか?