Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/72.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_Regression - Fatal编程技术网

R 特定形式的拟合模型

R 特定形式的拟合模型,r,regression,R,Regression,看起来这应该是一个简单的过程,但在通过帮助数据库搜索了?lm、?glm、?loglin等之后,我还没有找到答案 给定数据集 Y X 1 4.040000 0.8247096 2 3.170000 0.7896353 3 4.570000 0.8480331 4 1.460000 0.7236442 5 2.920000 0.8056733 6 4.640000 0.8468943 7 4.400000 0.6950

看起来这应该是一个简单的过程,但在通过帮助数据库搜索了?lm、?glm、?loglin等之后,我还没有找到答案

给定数据集

    Y   X
1   4.040000    0.8247096
2   3.170000    0.7896353
3   4.570000    0.8480331
4   1.460000    0.7236442
5   2.920000    0.8056733
6   4.640000    0.8468943
7   4.400000    0.6950719
8   3.570000    0.6297521
9   4.560000    0.6944195
10  1.760000    0.5485687
11  2.580000    0.6166014
12  4.470000    0.6948886
13  0.600000    0.2951873
14  0.360000    0.3001486
15  2.910000    0.7775315
16  0.580000    0.5239421
17  2.690000    0.7735998
18  2.080000    0.7224670
19  0.450000    0.3042284
20  3.050000    0.8391136
...
我想将几种特定形式的模型与此数据相匹配,例如:

Y = a*(b^X)+c
Y = a*(X^b)+c
对于给定用户定义的函数形式,是否有一种简单的方法来求解最佳拟合系数a、b和c?而且,当我在做的时候,返回一个R2或其他指标来确定哪一个是最合适的

谢谢


-sam

我认为您正在寻找非线性最小二乘模型的
nls
;也就是说,您可以指定要拟合的函数形式。尽管请注意,对于非线性最小二乘拟合,R^2充其量是不确定的——尽管比较具有相同数量参数的模型可能是可行的。太好了-感谢您提供的提示。我会尝试nls,也许还有另一个拟合指标(例如RMSE)。如果没有
c
术语,你可以取两边的对数,最后得到形式为
log(Y)=log(a)+log(b)*X
log(Y)=log(a)+b*log(X)
的模型,然后
lm()
就可以在这个模型上正常工作了。正是
c
项使得非线性拟合方法成为必要。