解决算法多项式回归问题,Octave中的最小二乘法
Problem in solving algorithm polynomial regression,least squares method in Octave
我正在尝试使用最小二乘法实现多项式回归。绘制第三张图时出现问题,未显示。
我认为是关于公式y=ax+b的实现。
但就我而言,首先我使用内联函数 polyfit
和 polyval.
获得了实验数据值
x=0:0.1:5;
y=3*x+2;
y1=y+randn(size(y));
k=1;#Polynom
X1=0:0.01:10
B=polyfit(x,y1,k);
Y1=polyval(B,X1);
毕竟,我已经在使用线性模型使用最小二乘法求解多项式回归了。
Y2=Y1'*x+B'; -----this problem formula
subplot(3,2,3);
plot(x,Y1,'-b',X1,y1,'LineWidth');
title('y1=ax+b');
xlabel('x');
ylabel('y');
grid on;
结果没有画图
检查向量的大小:x 和 Y1 的长度不同,X1 和 y1 的长度相同。
您可能希望绘制为:
plot(x,y1,'-b',X1,Y1,'LineWidth', 1);
我正在尝试使用最小二乘法实现多项式回归。绘制第三张图时出现问题,未显示。
我认为是关于公式y=ax+b的实现。
但就我而言,首先我使用内联函数 polyfit
和 polyval.
x=0:0.1:5;
y=3*x+2;
y1=y+randn(size(y));
k=1;#Polynom
X1=0:0.01:10
B=polyfit(x,y1,k);
Y1=polyval(B,X1);
毕竟,我已经在使用线性模型使用最小二乘法求解多项式回归了。
Y2=Y1'*x+B'; -----this problem formula
subplot(3,2,3);
plot(x,Y1,'-b',X1,y1,'LineWidth');
title('y1=ax+b');
xlabel('x');
ylabel('y');
grid on;
结果没有画图
检查向量的大小:x 和 Y1 的长度不同,X1 和 y1 的长度相同。
您可能希望绘制为:
plot(x,y1,'-b',X1,Y1,'LineWidth', 1);