这个例子展示了如何执行MATLAB®数据回归和曲线拟合微软®Excel®使用工作表和VBA宏。
这个例子组织和显示输入和输出数据Microsoft Excel工作表。电子表格链接™函数复制数据到MATLAB工作空间,并执行MATLAB计算和图形函数。VBA宏还将输出数据返回到工作表。
要使用电子表格链接在Excel中处理VBA代码,必须启用电子表格链接作为引用微软Visual Basic®编辑器。有关详细信息,请参见安装.
打开ExliSamp.xls
文件并选择Sheet1工作表。寻找ExliSamp.xls
文件的更多信息,请参考安装.
Sheet1的值包含指定的范围数据
,其中包含工作表单元格中的示例数据集A4
通过C28
.
要执行回归和曲线拟合,请在工作表单元格中执行指定的电子表格链接函数。
执行电子表格链接函数,该函数通过双击单元格将示例数据集复制到MATLAB工作区E5
和紧迫输入.该数据集包含三个变量的25个观察值。这些观测值之间有很强的线性相关性。事实上,它们很接近于互为标量倍数。
在单元格中执行函数E8
,E9
,E10汽油
.这些单元格中的电子表格链接函数将其他两列数据的第三列回归,并创建:
一个向量y
包含第三列数据
一个三列的矩阵一个
,它包含一列1,后面是其余的数据
在单元格中执行函数E13
.该函数使用MATLAB反斜杠计算回归系数(\)
操作解决多因素决定的线性方程组,*β= y
.
在单元格中执行函数E16天
.MATLAB矩阵向量乘法得到回归结果,适合
.
在单元格中执行函数E19
,E20
,E21
.这些函数:
将原始数据与适合
.
将数据按递增顺序排序,并将相同的排列应用于适合
.
为观察的数量创建一个标量。
在单元格中执行函数E24
和E25
.将多项式方程与五次多项式的数据拟合。MATLABpolyfit
函数自动建立一个联立线性方程组和解的系数。金宝搏官方网站的polyval
函数然后在每个数据点计算得到的多项式,以检查拟合的优度newfit
.
在单元格中执行函数E28
.MATLAB情节
函数图原始数据(蓝色圆圈),回归结果适合
(红色虚线)和多项式结果(绿色实线)。
由于数据是密切相关的,但不是完全线性相关的,因此适合
曲线(虚线)表示一种接近但不精确的拟合。五次多项式曲线newfit
是对数据更精确的数学模型。
要使用VBA宏建模数据,请在VBA宏中执行电子表格链接函数。
在ExliSamp.xls
文件,点击Sheet2选项卡。将显示此示例的工作表。
细胞A4
调用宏CurveFit
,你可以在微软Visual Basic环境。
当此模块打开时,请确保电子表格链接加载项已启用。要启用它,请参见插件安装.启用该外接程序后,“项目资源管理器”将其列出在参考文献文件夹中。
执行CurveFit
通过双击单元格生成宏A4
和紧迫输入.宏运行电子表格链接函数。当宏完成时,输入和输出数据将出现在工作表单元格中A7: C31
.
列A包含原始数据y
(排序)。
列B包含相应的回归数据适合
.
列C包含多项式数据newfit
.
MLGetMatrix
|MLPutMatrix
|MLEvalString
|polyfit
|polyval
|情节