R:OpTim()拟合参数限制 [英] R: Optim() fitting parameter limits

查看:15
本文介绍了R:OpTim()拟合参数限制的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我希望对OpTim()的输出参数进行限制。对于我的正弦函数,它不必要地收敛数千个异相(其中,‘DESIGN L’是我的自变量,‘Ratio’是我的因变量数据,DFM是我的数据帧):

lo_0 = 2e-6
kc_0 = 80000
min.RSS <- function(data, par) {
  with(data, sum( (sin(par[2] *(par[1] + designL))^2 - ratio)^2) )
}
resultt <- optim(par = c(lo_0, kc_0), min.RSS, data = dfm)

我想将lo_0(相移)限制在0:2e-5之间。我找到了一些关于这方面的文档,但没有太多关于如何实现的描述:https://ubuntuforums.org/showthread.php?t=1420061

推荐答案

可能

resultt <- optim(par = c(lo_0, kc_0), min.RSS, data = dfm[ind_1,],
     method="L-BFGS-B", lower=c(0,-Inf), upper=c(2e-5,Inf))

我强烈建议您另外使用参数control=list(parscale=c(lo_0,kc_0))optim()期望参数具有类似的比例,并且(在使用有限差分近似计算导数时)为1阶。

这篇关于R:OpTim()拟合参数限制的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆