Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何拟合R中的两项指数?_R_Curve Fitting_Nls - Fatal编程技术网

如何拟合R中的两项指数?

如何拟合R中的两项指数?,r,curve-fitting,nls,R,Curve Fitting,Nls,我想用(x,y)来拟合一个两项指数模型 本质上,我需要在R中复制Matlab的exp2模型类型,计算如下 f = fit(x, y, 'expo') 很好地解释了如何适应这样的抽象模型。它的jist是-使用nls()拟合“非线性最小二乘”模型: 函数应该完成剩下的工作 困难的部分是找到模型的估计值,这样在输入时就不会出现错误。该链接提供了对此的深入了解。祝你好运 编辑:作出@Ben Bolker建议的更改;另外,我不知道mpg在ggplot2中,而不是base R中,感谢您的澄清 你们有什么数

我想用(x,y)来拟合一个两项指数模型

本质上,我需要在R中复制Matlab的
exp2
模型类型,计算如下

f = fit(x, y, 'expo')
很好地解释了如何适应这样的抽象模型。它的jist是-使用
nls()
拟合“非线性最小二乘”模型:

函数应该完成剩下的工作

困难的部分是找到模型的估计值,这样在输入时就不会出现错误。该链接提供了对此的深入了解。祝你好运


编辑:作出@Ben Bolker建议的更改;另外,我不知道mpg在ggplot2中,而不是base R中,感谢您的澄清

你们有什么数据样本要展示吗?
x
是否为负值?是不是
y
否定?@Benjamin-只是澄清一下,
?nls
是默认情况下R附带的一个函数。您已经列出了nls函数(stats包),这是一个很好的开始。请看一下文档,并向我们展示您的尝试。请参阅以获取一些提示。您应该鼓励人们提交数据,以便他们拥有MWE。我将编辑问题以删除无关内容。@42-:我同意,这正是Severin Pappadeux和我的建议。您可能希望在使用变量之前定义它。。。并解释如何到达mpg。
mpg
ggplot2
包中,而不是在R基中。最好使用
m1=nls(显示a*exp(b*cty)+c*exp(d*cyl),data=mpg,
。。。然后尝试
insertList=list(a=1,b=-0.01,c=1,d=-0.01)
,以获得有效的启动条件。。。
f = fit(x, y, 'expo')
# Using the mpg data in ggplot2
library(ggplot2)
# Create list of initial estimates
insertList = list(a=1,b=-0.01,c=1,d=-0.01)
# fit model
m1 = nls(displ ~ a*exp(b*cty) + c*exp(d*cyl),data =mpg, start = insertList)