【matlab】用matlab的线性回归和线性拟合求出两者的关系函数

t=[1999 2000 2001 2002 2003 2004 2005 2006 2007 2008]
c=[399.72 506.97 754.98 989.4 1202.48 1473.29 1525 1717.87 1911.45 2004.25]

求t表达c.


figure;
t=[1999     2000    2001    2002  2003      2004      2005  2006      2007     2008];
c=[399.72 506.97 754.98 989.4 1202.48 1473.29 1525 1717.87 1911.45 2004.25];
a=polyfit(t,c,2);
ti=1999:1:2008;
ci=polyval(a,ti);
plot(t,c,'go','MarkerEdgeColor','k','MarkerFaceColor','g','MarkerSize',6);
xlabel('年份');
ylabel('相关数据');
axis([1999 2008 350 2100])
hold on
plot(ti,ci,'linewidth',2,'markersize',16)
legend('原始数据点','拟合曲线')
plot(t,c,'-r.')
sprintf('曲线方程:C=%0.5g*T^2+(%0.5g)*T+(%0.5g)',a(1),a(2),a(3))

%曲线方程:C=-5.5245*T^2+(22324)*T+(-2.255e+007)
%这是2次线性相关

figure;
t=[1999     2000    2001    2002  2003      2004      2005  2006      2007     2008];
c=[399.72 506.97 754.98 989.4 1202.48 1473.29 1525 1717.87 1911.45 2004.25];
a=polyfit(t,c,1);
ti=1999:1:2008;
ci=polyval(a,ti);
plot(t,c,'go','MarkerEdgeColor','k','MarkerFaceColor','g','MarkerSize',6);
xlabel('年份');
ylabel('相关数据');
axis([1999 2008 350 2100])
hold on
plot(ti,ci,'linewidth',2,'markersize',16)
legend('原始数据点','拟合曲线')
plot(t,c,'-r.')
sprintf('曲线方程:C=+(%0.5g)*T+(%0.5g)',a(1),a(2),)

%曲线方程:C=+(187.66)*T+(-3.7473e+005)
%这是一次的线性相关


评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值