15

Python でプログラミングする場合、pylint を使用すると非常に便利です。しかし、R でプログラミングする場合、これに匹敵するものはありません。

小さなサイド プロジェクトとして、小さな lint プログラムを書いてみるのは楽しいだろうと思いました。派手すぎるものはありません。次のようなものです。

  • 関数名がキャメルケースであることを確認する
  • 関数の平均長
  • 未使用変数の検出
  • 間隔。たとえば、function(x=1, y=2)代わりにfunction(x=1,y=2)

ただし、開始方法がわかりません(pylint soureコードを調べ始めました)。

どのように始めればよいですか?このタイプのプロジェクトに標準的なプログラミング手法はありますか? 検討すべき良いリソースはありますか?

プロジェクト全体をRで書きたいと思います。

4

4 に答える 4

12

codetoolsR に付属のパッケージを見てみましょう。詳細については、パッケージのCRANページを参照してください。たとえば、パッケージ内のコードは実行時に実行されるR CMD checkため、未使用の変数などをキャッチできますrlint

他の側面のいくつかに答えるために...関数名をキャメルケースに変換するなど、1つのタスクを実行する単純な関数を書き始めます。小さな関数の本体を構築すると、それらを機能する lint ラッパー関数に統合できますが、完全な lint 動作が必要ない場合は、ユーザー/開発者が特定の関数を柔軟に呼び出すことができます。

于 2011-03-01T20:58:51.957 に答える
12

lintrは、スタイル エラーと考えられるセマンティック エラーの両方に対してコードリンティングを行う R パッケージです。内部で codetools を使用し、その上で追加のリンティングを使用します。

また、Emacs、Vim、Sublime Text、RStudio とも統合されます。

于 2015-03-06T16:14:25.547 に答える
8

最近、誰かが R 用の lint パッケージを公開しました: http://cran.r-project.org/web/packages/lint/index.html

開発初期のようです。ここの Github にあります: https://github.com/halpo/lint.git

于 2013-02-23T04:42:41.417 に答える
5

「R CMD チェック」手順が役立つ場合があります。それが行うことの1つは、初期化されていないように見えることなく使用される変数を見つけることです。これはしばしばタイプミスです。そのチェック手順のコードが役立つ場合があります。

私はそれが小さな仕事だとは思わない!

于 2011-03-01T21:01:51.147 に答える