問題タブ [roxygen]
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 - リスト項目の Roxygen ドキュメント
私はRoxygenを学んでおり、これまでのところ順調に進んでいます。私が取り組んでいるパッケージのほとんどを文書化することができましたが、正しく理解できない箇所がいくつかあります。次の最小 R を考慮してください。
内にあるコメントはlist()、Roxygen によってドロップされたものであり、これを確認しました。
オプション設定インフラストラクチャがあり、Roxygen を使用して個々のオプションを文書化したいと考えています。コメントをインデントするかどうかは問題ではないようです。コメントを左揃えに移動しても効果がないようです。すべてのブロックに @rdname を追加しても効果がないようです。存在しない動作を期待しているだけですか? 別の質問で、受け入れられた回答は、Roxygen のコメントをどこにでも置くことができ、それらは収集されると述べました。
つまり、上記の何が欠けているのか、そして私の試みが気に入らない場合、他の人はどのように個々のデータ項目を文書化するのでしょうか?
ありがとうございました!
r - Roxygen: バックスラッシュ ('\') を含むデフォルト パラメータを関数に設定する方法
開発中のパッケージの Rd ファイルを生成するために Roxygen を使用していますが、デフォルトのパラメーターが '\n'に設定されている関数には問題があります。
どの目的は、文字列内の改行 ( '\n') 文字をカウントすることです。問題は、R CMD チェックで次の警告が表示されることです。
この問題は、Rdファイルへの書き込みが原因のようです(標準のLaTeXファイルへの書き込みにはcat()、何らかの目的でエスケープ文字を常に二重にする必要があります。たとえば\\newline 、私が経験したように)。次のように、区切り記号に余分なバックスラッシュを付けると:
コードでは のよう'\\n'に見えますが、ドキュメント (Rd ファイル) では'\n'.
私の問題の簡単な解決策はありますか? 関数のパラメーターを Rd ファイルに書き込む方法を定義できる Roxygen の追加のタグでしょうか? あまりにも明白な質問をされた場合は申し訳ありませんが、しばらく Google を使用した後、迷ってしまいます。
歴史: http://permalink.gmane.org/gmane.comp.lang.r.roxygen/24
更新: roxygen2を使用してください!
r - RパッケージのHTMLヘルプページの図(Rコードの実行結果)
Rでパッケージを作成する場合、ヘルプページをRd形式で作成し、それらをHTMLページに変換できます。ヘルプページにサンプルコードが含まれている場合は、「例」のセクションに印刷されています。
たとえば、パッケージ「stats」の関数「prcomp」には2つのページがあります。
- サンプルコードのみ:http ://stat.ethz.ch/R-manual/R-patched/library/stats/html/prcomp.html
- コード例+図付きの結果:http: //rgm2.lab.nig.ac.jp/RGM2/R_man-2.9.0/library/stats/man/prcomp.html
問題は、Rコードの実行結果をどのように生成するか、特に出力値を含めるかどうかです。これは「結果」のセクションに対応します。
次のコマンドを使用して、RdをHTMLに変換します。
これにより、R関数http://stat.ethz.ch/R-manual/R-devel/library/tools/html/Rd2HTML.htmlが呼び出されます。
コメントや提案をいただければ幸いです。ありがとう。
r - roxygenの高速化
大きなパッケージで実行R CMD roxygenすると、かなり長い時間がかかる場合があります。最後のroxygen呼び出し以降にファイルが変更されたかどうかに関係なく、すべてを処理するため、明らかに非効率的です。
物事をスピードアップする方法に関するヒントはありますか?
r - Rパッケージの「ヘルパー」関数をどのように処理する必要がありますか?
バックグラウンド
私はRパッケージを作成しましたが、現在、共同編集者(Rを初めて使用する最近のCS卒業生)がコードの編集とリファクタリングを行っています。その過程で、彼は私の関数をより小さく、より一般的な関数に分割しています。
彼がやっていることは理にかなっていますが、私が始めたときpackage.skeleton()、私は関数ごとに1つのファイルを持っていました。現在、彼は主要な関数が依存する関数を追加しましたが、それは関数自体の外での使用が制限されている可能性があります。
彼は、すべての関数を1つのファイルにまとめることを提案していますが、異なるファイルで作業する場合はバージョン管理を行う方が簡単なので、私は反対です。
それ以来、テキスト内の各機能を文書化するためにroxygenを使い始めました。
質問
関数を処理するための推奨される方法は何ですか:明らかにヘルパー関数はメイン関数のままである必要がありますが、ヘルパー関数をどの程度文書化する必要がありますか?
コメントの@export提案は役に立ちますが、他の人がどのようにコードを整理しているか知りたいです。
r - roxygen ドキュメントの任意のセクション
Roxygenが動作するように見える方法は、最初の行が であり、他の\titleすべてが にあり\details、その後、すべての@fooディレクティブがそれらを処理するというものです。しかし、R のドキュメントはそれよりも豊富です。"\section{Llamas}{Are they ungulates?}".Rd ファイルを使用できます。
しかし、\details ですべてをラップする以外に Roxygen に何かをさせることはできません。何か不足していますか?
}の前に比類のないものを貼り付けるというハックな解決策があり\sectionます。これで\detailsセクションは終了です。roxygen}は\details. ええええええええ。
r - roxygen がパッケージ情報を DESCRIPTION に書き込まないのはなぜですか?
Vignetteをたどったところ、pseudoprime-package.Rd の License、Author などの情報が DESCRIPTION に書き込まれていないことがわかりました。私は何か間違ったことをしましたか?
r - 変数名は 256 バイトに制限されています
次のコードで roxygenize が失敗し、次のエラー メッセージが表示されます。このトピックに関する他の投稿は、文字の配置が間違っていることを示しています。私は何も悪いことを見つけることができません!問題を特定できますか?
Edit1
上記のコードは、長い @return 行からいくつかの単語を取り出すと問題なく動作します
Edit2
roxygenize 呼び出しの前に sessionInfo() の結果を追加します。
r - Roxygenを使用して、別のパッケージのジェネリックのS3メソッドを適切に文書化する方法は?
新しいクラス、サーベイヤー、およびprintこのためのメソッドを定義するパッケージを作成していますprint.surveyor。私のコードは問題なく動作し、インライン ドキュメントには roxygen を使用しています。ただしR CMD check、次の警告が表示されます。
ドキュメント オブジェクト 'print.surveyor' では使用されているがコードでは使用されていない関数/メソッド: print
Hadley によって書かれた次の 2 つのページをインスピレーションとして使用しました:
NamespacesとDocumenting functions。どちらも正しい構文は@method function-name class
私の質問は次のprintとおりです。Roxygen を使用して新しいクラスのメソッドを文書化する正しい方法は何ですか? より具体的には、どうすれば警告を取り除くことができますか?
これが私のコードです:(コメント付きのドキュメントは、これを修正しようとする試みを示していましたが、どれもうまくいきませんでした。)
そして、roxygenized 出力、すなわちprint.surveyor.Rd:
r - roxygen2を優先してroxygenをスキップすることは可能ですか/お勧めですか?
私は最近、ドキュメンテーションの問題/怠惰を解決するために Roxygen を指摘されました。しかし、私の理解では、この光沢のあるRoxygen2はやや独自のものです. Hadley のパッケージ ツールでは Roxygen2 を使用する必要がありますが、ウォークスルーによるものはあまりないようです。
私が学習プロセスでゼロから始めていることを考えると:
新しいユーザーにとって、Roxygen2 の代わりに Roxygen を好むユースケースはありますか、それとも Roxygen2 の方があらゆる点で優れていますか?
もしそうなら、それを学習するためのリソースは何ですか (できれば、Roxygen の予備知識に依存しないもの)?
Roxygen2 は Roxygen と下位互換性がありますか (Roxygen の学習と作成に費やされた時間が引き継がれるように)?