登录论坛

查看完整版本 : [MATLAB数学相关] 线性回归程序中出现的错误 望大侠指点 在线等


ckjsyyq041
2009-05-31, 17:43
Y=[1132.62,1146.38,1159.93,1175.79,1212.33,
1866.95,1642.86,2004.82,2122.01,2199.35,2357.24,
2664.90,2937.10,3149.48,3483.37,4348.95,5218.10,6242.20]';
X=[3624.10 519.280 40.9900 4015.00;
4038.20 537.820 113.530 40581.0;
4517.80 571.700 152.990 42361.0;
4860.30 629.890 192.220 43280.0;
5301.80 700.020 215.840 44706.0;
5957.10 755.590 257.840 46004.0;
7206.70 947.350 296.290 47597.0;
8989.10 2040.79 280.510 79873.0;
10201.4 2090.73 156.950 51282.0;
11954.5 2140.36 212.380 52783.0;
14922.3 2390.47 176.180 54334.0;
16917.8 2727.40 179.410 55329.0;
18598.4 2821.87 299.530 56740.0;
21662.5 2990.17 240.100 58360.0;
26651.9 3296.91 265.150 59482.0
34650.5 4255.3 191.04 60220;
46532.9 5126.88 280.18 61470;
57277.3 6038.04 369.19 62388];
X=[ones(18,1) X];
[C,bint,r,rint,stats]=regress(y,x,0.05);
运行后出现 错误如下 :望高手指点
Error using ==> vertcat
All rows in the bracketed expression must have the same
number of columns.

TTT_IOU
2009-05-31, 18:57
Y应为一18--1的向量吧,最好在在换行时加...
还有X中有一行少‘;’
最后注意regress()中所用的X,Y;
Y=[1132.62,1146.38,1159.93,1175.79,1212.33,...
1866.95,1642.86,2004.82,2122.01,2199.35,2357.24,...
2664.90,2937.10,3149.48,3483.37,4348.95,5218.10,6242.20]';
X=[3624.10 519.280 40.9900 4015.00;
4038.20 537.820 113.530 40581.0;
4517.80 571.700 152.990 42361.0;
4860.30 629.890 192.220 43280.0;
5301.80 700.020 215.840 44706.0;
5957.10 755.590 257.840 46004.0;
7206.70 947.350 296.290 47597.0;
8989.10 2040.79 280.510 79873.0;
10201.4 2090.73 156.950 51282.0;
11954.5 2140.36 212.380 52783.0;
14922.3 2390.47 176.180 54334.0;
16917.8 2727.40 179.410 55329.0;
18598.4 2821.87 299.530 56740.0;
21662.5 2990.17 240.100 58360.0;
26651.9 3296.91 265.150 59482.0;
34650.5 4255.3 191.04 60220;
46532.9 5126.88 280.18 61470;
57277.3 6038.04 369.19 62388];
X=[ones(18,1) X];
[C,bint,r,rint,stats]=regress(Y,X,0.05);
希望有帮助!!!