Rの関数のS3ディスパッチシステムは、最初の引数のクラスを調べてから、という名前の関数を呼び出しますfunc.class
。この場合、作成者はいくつかのplot.predict
関数を定義しました:predict.plot.data.frame
、、predict.plot.lm
そしてpredict.plot.formula
、引数リストの(最初の)クラスに基づいて引数が与えられます。plot.predict関数は次のとおりです。
predict.plot <- function(object, ...) UseMethod("predict.plot")
「良いもの」は、ローランドが提供したリンクの他の3つの機能にあります。総称関数の名前に作者がドットを使用しているのは少し紛らわしいと思います。ジェネリック関数が存在するクラス「plot」があると予想したかもしれませんがpredict
、ここでは実際にはそうではありません。ただし、次のように入力するだけで面白い場合があります。methods(predict)
そのWebサイトにRスクリプトをロードした後これらのさまざまな関数は、次を使用して見つけることができます。
methods(predict.plot)
#[1] predict.plot.data.frame predict.plot.formula predict.plot.lm