感觉R对函数args的支持很弱,做不到args的泛函
如果我想求一个对任意函数第一个args的偏导数
则此函数应该定义为
function(smallchange, fn, args){
args_up = args[1]+smallchange, args[2:]
args_down = args[1]-smallchange, args[2:]
(fn(args_up)-fn(args_down))/smallchange/2}
但是很显然,R做不到这样完美的传参。参数无法被当成一个整体传到函数上,因此无法作出类似的编程。
如下例,采用list对runif传参,结论是错误的
runif(10, min=2, max=3)
runif(list(n=10, min=2, max=3))