プリミティブと内部に関するいくつかのドキュメントは次のとおりです。http://www.biosino.org/R/R-doc/R-ints/_002eInternal-vs-_002ePrimitive.html
ジェネリックは、クラスオブジェクトに適用できるジェネリック関数です。各クラスは、ジェネリックとして設定される特定のメソッドで記述されています。したがって、「methods」関数を使用した一般的な呼び出しに関連付けられている特定のメソッドを確認できます。
methods(print)
これにより、一般的な「印刷」に関連するすべてのメソッドが一覧表示されます。または、この呼び出しで特定のクラスが持つすべてのジェネリックを確認できます
methods(,"lm")
ここで、lmはクラス線形モデルです。次に例を示します。
x <- rnorm(100)
y <- 1 + .4*x + rnorm(100,0,.1)
mod1 <- lm(y~x)
print(mod1)
Call:
lm(formula = y ~ x)
Coefficients:
(Intercept) x
1.002 0.378
print.lm(mod1)
Call:
lm(formula = y ~ x)
Coefficients:
(Intercept) x
1.002 0.378
print(mod1)(汎用呼び出し)とprint.lm(mod1)(クラスへのメソッド呼び出し)はどちらも同じことを行います。なぜRはこれを行うのですか?よくわかりませんが、私が理解しているように、それがメソッドとジェネリックの違いです。