1

汎用関数を実装したいと思います:

call_with_parameters <- function(func, parameters) {
    call func with parameters and return result
}

これは、指定された関数func (パラメーターとして指定)をパラメーターのリストで呼び出すため、 func は一般的なパラメーター (... など) を処理できてはなりません。コールを返すように

たとえば、次のように呼び出しますmean(x=1:4, na.rm=TRUE)

call_with_parameters(mean, list(x=1:4, na.rm=TRUE))

助言がありますか?

4

1 に答える 1

3

do.call関数呼び出しの構築を探していると思います。

関数は呼び出しを作成し、すぐに評価します (を使用して呼び出しを作成し、後でたとえば を使用して評価することもできますcalleval)。do.call評価される関数のすべての引数を含むモード「リスト」のオブジェクトから引数を取ります。例えば:

do.call("mean", list(x=1:4,na.rm=TRUE))

と同等です:

mean(x=1:4,na.rm=TRUE)
于 2013-07-10T16:27:52.753 に答える