地理数据分析与建模集中实习日志(四)首先,针对matlab中不熟悉的语法进行复习:1.size函数[r,c]=size(A)当有两个输出参数时,size函数将矩阵的行数返回到第一个输出变量r,将矩阵的列数返回到第二个输出变量cr=size(A,1)该语句返回的时矩阵A的行数,c=size(A,2)该语句返回的时矩阵A的列数2.增广矩阵不同于线性代数中,在系数矩阵的右边添上一列。matlab中为原矩阵新添加一列[AB],把矩阵A和矩阵B合并到一起3.Y=round(X)在matlab中round也是一个四舍五入函数。4.使用“stem”绘制针状图注意:神经网络的输入和输出数据要求每列是一个样本偏最小二乘每行是一个样本其次,更正指导书中一个错误matlab代码如下:spectrumMean_sets=spectrumMean_sets';%以计算TP(因变量,真实值)为例[XL,yl,XS,YS,beta,PCTVAR]=plsregress(spectrumMean_sets,TP,10);yfit=[ones(size(spectrumMean_sets,1),1)spectrumMean_sets]*beta;%矩阵前加一列1以对应常数项(回归系数BETA,其中第一行是常数项(因为它乘以对应的1,是一个常数,即常数项)不管任何回归模型格式一般都是:y=ax1+bx2+cx3+dspectrumMean_sets在最左添加了一列1后,成了56*2152,正好可以乘系数矩阵beta(abcd的值是固定的,适用于任何变量,而d常数项,是该列第一个)维度如下residuals=TP-yfit;%残差等于真实值减去模型值figure;stem(residuals)%计算残差xlabel('Observation');ylabel('Residual');残差结果图