のRソースコードpnorm
は次のとおりです。
function (q, mean = 0, sd = 1, lower.tail = TRUE, log.p = FALSE)
.Call(C_pnorm, q, mean, sd, lower.tail, log.p)
したがって、技術的に言えば、「pnorm」と入力するとソースコードが表示されます。ただし、より便利です。の内臓はCでコーディングされているため、 Rのソースコードを表示pnorm
する前の質問のアドバイスは、周辺的にのみ役立ちます(ほとんどは、名前空間などに隠された関数に集中しています)。
RニュースのUweLiggesの記事、ソースへのアクセス(p。43)は、一般的な参考資料として適しています。その文書から:
.C()
Rソースコードを見ると、
次の関数のいずれかへの呼び出しが表示されることがあり.Call()
ます.Fortran()
:
、、、、、、.External()
または。これらの関数は、共有オブジェクト、静的ライブラリ、ダイナミックリンクライブラリなどのコンパイル済みコードのエントリポイントを呼び出しています。したがって、コードを完全に理解する必要がある場合は、コンパイルされたコードのソースを調べる必要があります。...最初のステップは、呼び出し元のR関数がまたはの場合、ファイル'$ R HOME / src / main/names.c'のエントリポイントを検索することです
。これは、次の例で「単純な」R関数を実装するコードに対して実行されます
。.Internal()
.Primitive()
.Primitive()
.Internal()
sum()
(()について尋ねた正確な関数がsum
Liggesの記事でカバーされているため、強調が追加されました。)
コードをどれだけ真剣に掘り下げたいかによっては、Liggesが提案するように、ソースコードをダウンロードして解凍する価値がある場合があります(たとえば、grep
ソースコードを検索するなどのコマンドラインツールを使用できます)。より簡単に調べるには、 RSubversionサーバーまたはWinstonChangのgithubミラーを介してオンラインでソースを表示できます(ここへのリンクは特にへのリンクですsrc/nmath/pnorm.c
)。(見るsrc/nmath/pnorm.c
のに適切な場所を推測するには、Rソースコードの構造にある程度精通している必要があります。)
mean
とsum
両方がsummary.cに実装されています。