我编写了一个函数来逼近R中的点x中的导数,如下所示:
nderiv<- function(f,x,h){
(f(x+h)-f(x))/h
}
并希望在f中输入x ^ 2,&#34; x ^ 2&#34;或者作为预定义的函数,如:
ex<- function(x){
x^2
}
如果您使用最后一个示例(使用预定义函数),代码可以正常工作。但是在插入其他选项时我无法使用它。
我得到错误
nderiv(x ^ 2,1)中的错误:object&#39; x&#39;找不到
或
nderiv中的错误(&#34; x ^ 2&#34;,1,1e-04):找不到功能&#34; f&#34;
所以我希望能够写nderiv(x^2,1,0.0001)
或nderiv("x^2",1,0.0001)
并获得值2.0001。
提前致谢!
答案 0 :(得分:0)
如果您想将x^2
用作匿名函数,请将其作为nderiv
传递给function(x){x^2}
。类似的东西:
nderiv(function(x){x^2}, 1, 0.0001)