curve メモ

さっきのapply, lapply, sapply メモ - biochem_fan's noteに関連して、高階関数の型チェックつづき。

グラフを書いてくれる curve 関数の引数は?

fun <- function(x) {print(x); return(x * 2)} 
curve(fun, from=0, to=1)

x の値をベクトルとして受け取って、ベクトルとして評価値を返す関数。つまり、1度しか呼び出されない。x を 1つ1つ受け取るわけではないから注意が必要。

こういうことは、ヘルプの Details 節をよく読めば書いてあるんだけど、

Then expr is evaluated in an environment which supplies a vector of name given by xname of length n, and should evaluate to an object of length n.

もう少し型として明記してほしいところ。