matlab 已知函数和数据 计算r2
来源:学生作业帮助网 编辑:作业帮 时间:2024/08/27 13:59:24
%%%%%%f1.m%%%%%%%%%%functiony=f1(n)y=1;fori=1:ny=y*i;endend%%%%%%f2.m%%%%%%%%%%functiony=f2(n,m)y=f1
如果你想拟合的函数是多项式的话,可以用polyfit(x,y,n)来拟合.x,y为你的数据,n对应拟合多项式的阶数,可以自己设定.如果你想函数事先估计一个模型,然后根据数据求出其中的系数的话,可以用l
t=[0.1,1.1,2.3,3.4,4.5,5.7,6.7]';y=[0,94.0,84.0,77.0,69.0,62.0,56.0]';ft_=fittype('A*exp(-beta*t)*co
可以用fit函数进行拟合,你可以查看帮助文件了解fit函数的具体用法.我举个简单的例子:已知有一组数据:x=[12345678910];y=[0.1411-0.27940.4121-0.53660.6
MATLAB有好多方法来拟合函数,比如对数拟合、指数拟合、多项式拟合.建议你看一下讲解MATLAB函数拟合的书籍.就你给的数据看,多项式拟合(Polyfit)比较适合且比较简单.
d1=[80.66;100.72;120.76;160.78;200.73];d2=[30.60;40.65;4.80.67;60.61];d3=[30.625;40.70;4.80.725;60.6
你要拟合的非线性有没有固定的方程呢?还是随便用多项式去拟合?
1、建立M文件myfun.mfunctiony=myfun(x)y=a(1)*(1+(a(2)^2)*exp(x.*a(3))+cos(x)).*sqrt((1-(a(2)^2))*x)./x.^2;
把文件的具体路径写进去,比如[I,map]=imread('D:\pic\IKNOS_pan.tif');
data=[13.39397\x0910779.24086\x0926376.5756513.18762\x0910624.98982\x0928662.5539912.12091\x099529.5
plot(x,y,'*');
plot3(x,y,z)
f=@(p,x)p(1)*exp(p(2)./x);T=80:-5:50;R=[375.3407.8467.3549.4642.0754.7901.2];p=lsqcurvefit(f,[11],T,
td=[13.3939710779.2408613.1876210624.9898212.120919529.59005712.292929550.56878912.776869570.94
a=log(2);b=log(0.8);c=-b/a运行后c=-0.3219其实就是这个关系:logaB=In(B)/In(a)
我觉得只能通过显示三维空间内不同的面上的强度强弱(用颜色表示),显示方法在matlab中为slice与interp3下图为matlab中实现你的功能的代码示范下图为interp3的效果
直接粘贴复制 就可以啦.
好像是没有办法求的.若硬要去求,答案也不会有唯一性.如果X是个三阶的矩阵,Y是个四阶的,那更谈不上了.
这,这是二值函数啊,手动给出一个解吧:y=-2*sgn(x-31);其中sgn是符号函数如果要用连续函数拟合的话,可以用sigmod函数:y=-2/(exp(-x+31.5)+1)+1;
举个列子………………X=1:100;直接y=sin(x)就搞定.再问:这两组没有确切的关系……能定义为y=f(x)吗?再答:可以………………再问:不行啊……提示:???Undefinedcommand