函数(由用户定义)作为函数

时间:2015-10-29 08:19:57

标签: r function

我想编写一个函数,其中一个参数是用户编写的函数。

具体来说,我有类似的东西:

My_function(n,g){
    x<-dnorm(n,0,1)
    y<-g(x)
    return(y)
}

例如,g(x)= x ^ 2 ...但是由用户选择。当然,我可以直接把g(dnorm(n,0,1))作为参数,但我希望用户用x来表示,即在例子中g&lt; -x ^ 2。

我怎么能这样做,因为x对象只在函数中定义(而不是在参数中)

我无法事先定义g函数(否则,我觉得它很容易)。它必须在&#34; My_function&#34;中定义。这样用户就可以在一行中定义他需要的所有内容。

1 个答案:

答案 0 :(得分:0)

为什么不将g=function(x) x^2 My_function=function(n,g){ x<-dnorm(n,0,1) y<-g(x) return(y) } My_function(1,g) 声明为带参数的函数?

{{1}}