matlab中的nlinfit函数怎么用

X=[1234567891011]Y=[100.00099.932899.731199.5320102.0654103.7961104.5534104.4563104.6... X=[1 2 3 4 5 6 7 8 9 10 11]
Y=[100.000 99.9328 99.7311 99.5320 102.0654 103.7961
104.5534 104.4563 104.6679 104.5061 104.6106]
拟合函数yd=x(1)+x(2)*xd+x(3)*xd^2,求程序,急!
展开
 我来答
timecon78
推荐于2016-04-07 · TA获得超过1万个赞
知道大有可为答主
回答量:7783
采纳率:0%
帮助的人:3514万
展开全部
回归分析(Regression Analysis)是研究一个变量Y与其他若干变量X之间相互关系的一种数学工具。它是在一组试验或观测数据的基础上,寻找被随机性掩盖的变量之间的依存关系。粗略的将,可以理解为用一种确定的函数关系去近似代替比较复杂的相关关系。这个函数被称为回归函数,在实际问题中称为经验公式。(摘自:王正林等《精通MATLAB科学计算》)
用MATLAB进行非线性回归,即nlinfit函数。从理论分析上将要进行回归,必须要提供一个函数原因beta=nlinfit(X,Y,fun,beta0)其中:X和Y为变量列表;fun为要拟合的非线性函数原型;beta0为非线性函数原型各系数的猜测初始值;beta为与beta0对应的计算值。
gudunanhaijj
2018-08-27 · TA获得超过164个赞
知道答主
回答量:11
采纳率:0%
帮助的人:2952
展开全部
logistic 模型分析人口增长
clear
clc
t=0:20;
x=[123626 124761 125786 126743 127627 128453 129227 129988 130756 131448 132129 132802 133450 134091 134735 135404 136072 136782 137462 138271 139008] %读入1997-2017年的人口数据
[c,d]=solve('c/(1+(c/123626-1)*exp(-5*d))=128453','c/(1+(c/123626-1)*exp(-20*d))=139008','c','d') %通过第五年和第二十年的数据求解得出人口上限xm和最初时刻人口增长率r
c=double(c)
d=double(d)
b0=[c,d]
fun=inline('b(1)./(1+(b(1)/123626-1).*exp(-b(2).*t))','b','t');
b=nlinfit(t,x,fun,b0); %将得到的xm和r作为猜测初始值代入非线性拟合函数nlinfit,得到拟合后的xm和r
e1=b(1),e2=b(2)
t1=0:70;
y=e1./(1+(e1/123626-1).*exp(-e2.*t1)); %此函数表示拟合后的函数曲线
figure(1);
plot(t,x,'*',t1,y,'-or');
legend('1997-2017年人口数据','拟合数据以及未来50年人口变化趋势')
ylabel('单位:万人');
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
书宬
推荐于2018-02-26 · TA获得超过7849个赞
知道大有可为答主
回答量:2125
采纳率:75%
帮助的人:3281万
展开全部
X=[1 2 3 4 5 6 7 8 9 10 11];
Y=[100.000 99.9328 99.7311 99.5320 102.0654 103.7961 104.5534 104.4563 104.6679 104.5061 104.6106];
eq=inline('a(1)+a(2)*x+a(3)*x.^2','a','x');
a=nlinfit(X,Y,eq,[1 2 1]);
plot(X,Y,'*',X,a(1)+a(2)*X+a(3)*X.^2)
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式