将离散序拟合出函数表达式
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/14 06:58:06
我算了一下,按x为8的情况,a0是9.239,a1/time是-0.6多,y是5127左右(我用近似数算的),所以我觉得你是算错了.that‘sall.ppv课学习网站
拟合的时候把y当作自变量,x当作未知数这样拟合出来的函数是x=f(y)知道y求x就容易了
最小二乘法是最有效的方法.这个是非要手工算吗?如果不是的话,建议试试matlab和eviews,matlab提供了拟合的函数,eviews可以点点鼠标就可以直接拟合了.
首先你给的题目有问题,Y只有59个数据,所以我给X多增加了2个.其次你怎么没赏分最后的结果是只有这样的人才会来解答你的问题了,clear;clc;x=30:5:320;y=[33.4537.2340.
我把球面拟合出来了,也画出来了,但不知道什么是球度误差,你可以用数据和拟合出的球面方程自己算.clear;clc;[x,y,z]=sphere(5);data=10*unique([x(:)-0.1,
你要的拟合问题,有很多种方式如果你需要的一条函数,希望尽量靠近这些点,但是可以不过这些数据点,可以用最小二乘法去求这么一个函数,具体的函数形式,也是由你自己定如果你要这个拟合函数过这些数据点,那么可以
可以参考http://www.xinyudiyi888.com/?post=3这篇博客文章上的办法再问:额点都是未知的啊再答:亲,你有图,先二值化,你可以获取点啊,而且你说的是对离散点进行直线拟合。
poly2sym(p)
程序如下:x=[1.75,2.25,2.5,2.875,2.686,2.563];y=[0.26,0.32,0.44,0.57,0.50,0.46];plot(x,y,'g.',
对于y=b*(a^x)指数来说两边取对数ln(y)=ln(a)*x+ln(b)最小二乘法,求ln(a)ln(b)求a,b注意:1.y的数据要取对数后再与x进行拟合再问:x=2003:1:2012;y=
x=[1978:1:2010]';y=[56663274575576978998511101313142817821920215022922601314943385145580962416854765
是不是系数(参数)没有设定初始值?初始值就是随便附一个值,你就填1好了.
用plot(x,y,'ro-')看了下你的数据,线性关系很差.若用BP网络来拟合的话,可以按照如下步骤操作,其中很多参数你自己可以去尝试改变:>x=0:25;>y=[0004.049.2146.627
clearx=[19781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000
假设有函数y=f(x),>>x=0:0.1:16;(0:16是区间,0.1是间隔)>>y=f(x);(这是函数表达式)>>plot(x,y,'rp');可以仿照这个来就好了.
看你的数据不多啊,我的建议还是把数据分段,然后写三个拟合函数这样呗
%1x=-1:0.011:1y=sin(x)./x%2y=1./(1+exp(.^x))y=[(1-x.^2).^(1/2)].*cos(2*x)
这个太难了,或者说是有太多的不确定性因为连一个大概的函数形式都没有给出来也就是说可能性太多,这组数据可以拟合出无数多种函数结果如果什么函数形式都不给出的话,或者用多项式拟合吧下面是尝试用11次多项式拟
对于y=b*(a^x)指数来说两边取对数ln(y)=ln(a)*x+ln(b)最小二乘法,求ln(a)ln(b)求a,b注意:1.y的数据要取对数后再与x进行拟合 再问:能写下程
你用的什么拟合啊,多项式拟合p=polyfit(x,y,n),输出的就是多项式的系数