2013-03-26 9 views

答えて

7

機能便利functional::Curryもあります:

f <- function(a, b, c) {a + b + c} 
f(1, 2, 3) 
# [1] 6 

library(functional) 
g <- Curry(f, a = a1, c = c1) 
g(b=2) 
# [1] 6 
g(2) 
# [1] 6 

私は@のNPEのソリューションとの重要な違いはCurryを使用してgの定義はbを言及していないということだと思います。だから、fの引数の数が多くなると、このアプローチを好むかもしれません。

+1

'pryr :: partial'と' ptools'に '%<<%', '%>>%'と '%()%'もあります。部分的な評価と引数の遅延評価がどのように相互作用すべきかは明確ではなく、それぞれのパッケージは若干異なるアプローチをとっています。 – hadley

5
g <- function(b) f(a1, b, c1) 
関連する問題