【发布时间】:2015-12-09 09:15:11
【问题描述】:
我想编写一个 R 函数,它采用 x 中的数学函数并在 x 中返回一个新函数作为输出。例如:
输入应作为数学函数(或关系)传入x:
g <- x^2 + 9*x + log(x)
结果输出应该是:
function(x) (exp(g))
即我想在这个说明性示例中返回 x 中原始函数的符号指数表达式,即 exp(x^2 + 9*x + log(x))
所以理想情况下它会返回函数对象:
function(x) (exp(x^2 + 9*x + log(x)))
我尝试如下:
test <- function(g){
h <- function(x){exp(g)}
return(h)
}
m <- test(x^2 + 9*x + log(x))
m(10)
所以 m(10) 应该返回:
exp(10^2 + 9*10 + log(10))
在这种情况下是 exp(192.3026)。
谁能告诉我如何做到这一点?
【问题讨论】:
-
这类似于符号微分,不是吗?
deriv(expr, ...) -
否 - 这里不涉及区分。只想从作为输入传入的函数(即 x^2 + 9*x + log( x))。
-
因为我写了“相似”。我知道你想要符号表达式的另一种转换。
-
当然 - 在功能转换的意义上它是相似的 - 是的
-
是的@JoshO'Brien - 你是对的。我的意思是“exp(192.3026)”。现在已编辑谢谢!
标签: r