我想编写一个函数,该函数将两个变量f(x, y)
的函数作为参数,并返回另一个函数f(x)
,该函数返回最大的y
,使得某些谓词{{ 1}}是满意的。例如,我想知道最大的p(f(x, y))
,其中y
。
例如,
f(x,y) > 0
我知道x和y的上限和下限,但是除此之外,我对函数# Given:
f <- function(x, y) ifelse(y <= x^2 & x > 0, 1, 0)
# Then:
g <- function(fn, pred) ...
g(f, function(y) > 0)(1) # => 1
g(f, function(y) > 0)(2) # => 4
g(f, function(y) > 0)(3) # => 9
# etc.
的先验知识一无所知,除了在边界处它是平滑且连续的。好吧,实际上我知道这是对f
的回归拟合:我正在尝试跟踪函数的轮廓,并生成它的函数对象作为另一个函数的输入。
mgcv::gam
似乎可以通过网格绘制轮廓来进行类似的操作。我以为这也许暗示了前进的道路,但是我不确定。我能做得比平分更好吗?