Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
|
![]() |
#1 |
初级会员
注册日期: 2009-02-17
年龄: 45
帖子: 2
声望力: 0 ![]() |
![]()
如何做三元线性拟合?如
前角(度) 切深(mm) 切削速度(m/s) 水平切削力(N) 10 2 0.2 112 10 4 0.4 120 10 6 0.6 150 15 2 0.4 160 15 4 0.6 168 15 6 0.2 147 20 2 0.6 170 20 4 0.2 155 20 6 0.4 160 我要做水平力与其它三个的关系函数。 请高手帮帮忙,谢谢!!! |
![]() |
![]() |
![]() |
#2 |
高级会员
注册日期: 2007-06-24
年龄: 70
帖子: 188
声望力: 21 ![]() |
![]()
该目标变数Y与第二列(x2)没有关系,请运行下列小程序:
但数据量太少,可能说明不了问题。这类问题应有足够多的数据。 clear,clc x1=[10 10 10 15 15 15 20 20 20]';%原第1列 x2=[0.2, 0.4, 0.6, 0.4, 0.6, 0.2, 0.6, 0.2, 0.4]';%原第3列 y=[112 120 150 160 168 147 170 155 160]'; X=[ones(9,1),x1,x1.^2,x2.^2]; b=X\y SSy=var(y)*8 RSS=y'*y-b'*X'*y MSe=RSS/(9-4) R2=(SSy-RSS)/SSy scatter3(x1,x2,y) stem3(x1,x2,y,'filled') str=num2str([1:9]'); text(x1,x2,y+.05,str,'fontsize',12) hold on [x11,x22]=meshgrid(10:.5:20,0.15:.01:.65); y1=b(1)+b(2)*x11+b(3)*x11.^2+b(4)*x22.^2; surf(x11,x22,y1) axis tight shading interp alpha(.75) |
![]() |
![]() |