在 Matlab 的曲线拟合工具中使用哪种类型的方程?
Which type of equation to use in the curve fitting tool in Matlab?
我有一些数据点,我想用自定义方程拟合该曲线。数据如下:
-20.5 -632.8475722
-19.5 -633.3214772
-18.5 -646.6016049
-17.5 -683.4637841
-16.5 -649.8121364
-15.5 -616.4297769
-14.5 -609.9639983
-13.5 -534.5818772
-12.5 -532.2347152
-11.5 -452.9222271
-10.5 -427.6525318
-9.5 -380.3710984
-8.5 -322.5516672
-7.5 -294.1208624
-6.5 -222.1675481
-5.5 -202.2179342
-4.5 -165.122709
-3.5 -134.827559
-2.5 -88.25392126
-1.5 -66.0446787
-0.5 -52.03853651
0.5 -35.01795243
1.5 -18.27307888
2.5 4.200002613
3.5 31.46742774
4.5 65.02174186
5.5 113.4098161
6.5 132.8355363
7.5 115.0080076
8.5 124.3832919
在我看来它像一个 S 型函数,但我找不到适合数据的正确自定义类型方程。我尝试了以下方法,但它错过了上限值。我可以使用哪种类型的方程式?
谢谢
一个简单的线性拟合(蓝色)比你的逻辑拟合(石灰)好:
这是由于模型 y(x)=a / (1 + exp(b * x) + c)
对于这个模型,对于大 x,y(x) 趋于 0,这与数据不一致:显然对于大 x,y(x) 大于 0。
尝试使用四个参数逻辑函数,而不是三个参数逻辑函数:y(x) = K + a / ( 1 + exp(b * x) + c)
更重要的是,点的形状使我们想到一个双重逻辑 y(x) = K + a / (1 + exp(b * x) + c) + A / (1 + exp(B * x) + C) 但太多的参数使得非线性拟合过程变得困难。
或双逻辑函数的等价形式(用不同的符号书写):
尽管如此,我同意 Cris Luengo 对主要问题的大部分评论。
我有一些数据点,我想用自定义方程拟合该曲线。数据如下:
-20.5 -632.8475722
-19.5 -633.3214772
-18.5 -646.6016049
-17.5 -683.4637841
-16.5 -649.8121364
-15.5 -616.4297769
-14.5 -609.9639983
-13.5 -534.5818772
-12.5 -532.2347152
-11.5 -452.9222271
-10.5 -427.6525318
-9.5 -380.3710984
-8.5 -322.5516672
-7.5 -294.1208624
-6.5 -222.1675481
-5.5 -202.2179342
-4.5 -165.122709
-3.5 -134.827559
-2.5 -88.25392126
-1.5 -66.0446787
-0.5 -52.03853651
0.5 -35.01795243
1.5 -18.27307888
2.5 4.200002613
3.5 31.46742774
4.5 65.02174186
5.5 113.4098161
6.5 132.8355363
7.5 115.0080076
8.5 124.3832919
在我看来它像一个 S 型函数,但我找不到适合数据的正确自定义类型方程。我尝试了以下方法,但它错过了上限值。我可以使用哪种类型的方程式?
谢谢
一个简单的线性拟合(蓝色)比你的逻辑拟合(石灰)好:
这是由于模型 y(x)=a / (1 + exp(b * x) + c)
对于这个模型,对于大 x,y(x) 趋于 0,这与数据不一致:显然对于大 x,y(x) 大于 0。
尝试使用四个参数逻辑函数,而不是三个参数逻辑函数:y(x) = K + a / ( 1 + exp(b * x) + c)
更重要的是,点的形状使我们想到一个双重逻辑 y(x) = K + a / (1 + exp(b * x) + c) + A / (1 + exp(B * x) + C) 但太多的参数使得非线性拟合过程变得困难。
或双逻辑函数的等价形式(用不同的符号书写):
尽管如此,我同意 Cris Luengo 对主要问题的大部分评论。