matlab 对两组数据进行曲线拟合,得到的系数很不正常,求助

下面是我写的程序 t=0:300:86400; ci=[56 59 66 71 68 66 68 74 71 65 61 61 64 64 70 70 71 72 73 75 76 79 80 82 85 96 96 85 78 70 68 69 78 88 94 98 98 99 100 101 103 106 107 105 99 93 89 98 107 106 99 105 113 112 113 114 117 122 120 108 115 129 134 138 143 152 160 166 167 165 174 182 192 203 214 212 201 199 201 203 212 224 236 249 263 266 252 249 263 277 292 298 296 300 303 308 321 316 315 311 298 283 272 263 250 242 231 238 252 265 275 289 302 302 299 298 286 272 260 250 248 239 241 237 229 220 208 197 186 176 166 157 149 140 126 113 100 88 86 97 107 111 109 107 106 100 98 98 95 87 79 84 94 95 100 108 116 113 107 110 102 91 81 82 92 93 94 88 82 73 74 73 69 73 68 60 50 51 57 56 59 63 69 76 73 82 92 103 106 105 102 99 93 91 89 84 88 86 87 93 88 95 94 87 81 75 68 61 56 52 48 42 41 43 45 47 58 68 77 87 98 110 123 138 148 154 157 166 173 178 185 188 190 192 190 186 183 174 172 166 158 150 142 128 118 115 123 119 126 135 136 135 143 148 145 135 125 115 107 95 84 74 65 54 47 43 43 51 52 48 45 55 65 74 77 75 76 71 74 83 87 89 91 81 77 86 83 75 80 ] ci'; p=polyfit(t,ci',4); plot(t,ci','r'); p 生成的曲线看着该是3次以上,但是得到的多项式系数只有一次,各位高手指点下,是哪里出错了。

第1个回答  2019-11-11
是因为它的高次项系数太小10-12,没显示出来,你看到的就为0,建议分段拟合!或用神经网络做数据逼近!

matlab 对两组数据进行曲线拟合,得到的系数很不正常,求助
是因为它的高次项系数太小10-12,没显示出来,你看到的就为0,建议分段拟合!或用神经网络做数据逼近!

急!Matlab新手上路,拟合数据不对,求救!!
主要是初值选择不当,把 p=nlinfit(x,y,f,[1 1 1 1])改成 p=nlinfit(x,y,f,[-2e5 1 -650 30])即可得到较为满意的效果。很多情况下,拟合问题都和参数的初始估计值有关系。因为参数拟合本质上是一个优化问题,尤其对于多个拟合参数的情况,很可能存在多个局部最优点,如果初始参数选择不当...

matlab拟合两条温度曲线找到发生偏差的坐标?
利用cftool曲线拟合工具箱:Linear model Poly2:f(x) = p1*x^2 + p2*x + p3 Coefficients (with 95% confidence bounds):p1 = -0.03816 (-0.05458, -0.02173)p2 = 13.56 (12.62, 14.51)p3 = -1.28 (-8.511, 5.952)Goodness of fit:SSE: 248 R-square: 0....

matlab拟合求方程系数,然后把曲线作图发现自己拟合相差甚远,求高手相...
我觉得你的拟合没问题,问题是9次多项式可能不足以拟合出这条曲线,从图上来看300-400这段拟合的结果是对的,后面就完全不对了,你可能需要更高次的多项式来进行拟合,或者结合其他函数进行拟合,比如说加入三角函数,指数函数什么的。

求助!Matlab自定义拟合函数拟合效果非常不理想,有代码如下,求解决方 ...
两个指数函数而已,有那么难吗?考虑到两个指数函数可能有一定冗余,因此先只用一个指数函数的模型,然后再修正之。想在>0区间里画出这种上凸的弧,肯定是a和b都为负数。又考虑到指数函数自身在0点取值为1,只靠a调节肯定不够,因此模型上加一个常数项修正。因此,第一次尝试的模型是:a*exp(b*...

matlab多项式曲线拟合误差怎么计算?
在Matlab中使用`polyfit`函数进行多项式曲线拟合时,可通过以下方法计算拟合误差:1. 残差平方和(RSS)残差平方和是计算拟合曲线与原始数据之间的误差大小,其公式为RSS = Σ(y - y_fit)^2,其中y为原始数据点,y_fit为拟合曲线上的点。2. 均方根误差(RMSE)均方根误差为残差平方和的平均值的...

如何使用matlab实现数据的曲线拟合
打开Matlab软件,在命令窗口将数据导入,并分别给数据命名,这里以x ,Y命名两个行向量数据。x=[1,3,5,7,9,15];Y=[1,4,8,13,20,25];这里的数据也可以通过文件读取的方式导入(如csvread,load等命令)。在命令窗口输入cftool,打开拟合窗口。在拟合窗口选择要拟合的数据,那个作为x,哪个作为y。

关于Matlab的曲线拟合问题。我想拟合一条曲线,但其中有两个数据偏差过...
找到那个两个点后,重新建立新数据矩阵(把那两个点删了)。用新的数据放到GUI里面做。

关于MATLAB曲线拟合问你。拟合后的多项式我把数值带入后为什么有那么大...
216 223 226 229 231 233 236 239 241 244 248 252 255 260 263 266 268 270 273 275 278 282 284 286];p=polyfit(x,y,3);x2=0:300;y2=polyval(p,x)subplot(2,1,1)plot(x,y,'*',x,y2,'s')subplot(2,1,2)plot(x,(y-y2).\/y)看相对误差,拟合精度还是挺高的。

利用Matlab进行曲线拟合
在Matlab中,`polyfit`和`polyval`函数用于进行多项式拟合。`polyfit(x,y,n)`函数根据观测数据和指定的多项式阶数得到光滑曲线的多项式表示,其中`x`是自变量,`y`是因变量,`n`是多项式阶数。`polyval(p,a)`函数用于计算多项式在给定点的值,其中`p`是多项式表示,`a`是点的标量或矩阵。当输入为...

相似回答