主要内容

removeTerms

从线性回归模型中移除术语

描述

例子

NewMdl= removeTerms (mdl条款返回使用输入数据和设置拟合的线性回归模型mdl与条款条款移除。

例子

全部折叠

创建一个线性回归模型使用哈尔德数据集。删除有高的项p值。

加载数据集。

负载哈尔德X =成分;%的预测变量y =热量;%响应变量

用线性回归模型拟合数据。

mdl = fitlm (X, y)
mdl =线性回归模型:y ~ 1 + x1 + x2 + x3 + x4估计系数:估计SE tStat pValue  ________ _______ ________ ________ ( 拦截x1) 62.405 70.071 0.8906 0.39913 1.5511 0.74477 2.0827 0.070822 x2 0.51017 0.10191 0.75471 0.13503 0.89592 0.72379 0.70486 0.5009 x3 x4 -0.14406 0.70905 -0.20317 0.84407数量的观察:13、误差自由度:8均方根误差:2.45 r平方:0.982,校正r平方:0.974 F-statistic vs. constant model: 111, p-value = 4.76e-07

删除x3x4因为他们的p值很高。

条款=“x3 + x4”要删除的条款%NewMdl = removeTerms (mdl条款)
NewMdl =线性回归模型:y ~ 1 + x1 + x2估计系数:估计SE tStat pValue  ________ ________ ______ __________ ( 拦截)52.577 2.2862 22.998 5.4566平台以及x1 e-07 x2 0.66225 0.045855 14.442 2.6922 1.4683 0.1213 12.105 5.029 e-08数量的观察:13日误差自由度:10根均方误差:2.41平方:0.979,调整后的R-Squared: 0.974 F-statistic vs. constant model: 230, p-value = 4.41e-09

NewMdl的r平方调整值(0.974)与前一个模型相同,意味着新模型的拟合同样好。这种新型号的所有价格都非常低p值。

输入参数

全部折叠

线性回归模型,指定为LinearModel对象创建使用fitlmstepwiselm

从回归模型中删除的术语mdl,指定为下列其中之一:

  • 中的字符向量或字符串标量公式威尔金森符号表示一个或多个项的。公式中的变量名必须是MATLAB有效的®标识符。

  • 计算矩阵T的大小t——- - - - - -p,在那里t是多少项和p预测变量的数量在吗mdl.的价值T (i, j)是变量的指数吗j在术语

    例如,假设mdl有三个变量一个B,C这个顺序。每一行的T代表一个术语:

    • (0 0 0)-常数项或截距

    • (0 1 0)- - - - - -B;同样,A^0 * b ^1 * c ^0

    • (1 0 1)- - - - - -* C

    • (2 0 0)- - - - - -^ 2

    • [0 1 2]- - - - - -B * (C ^ 2)

removeTerms将一组指标性变量作为一个单独的变量来处理。因此,您不能指定要从模型中删除的指标变量。如果你指定了一个要从模型中移除的分类预测器,removeTerms在一个步骤中为预测器删除一组指示器变量。看到用step修改线性回归模型下面的示例描述了如何手动创建指示器变量,并将每个变量视为单独的变量。

输出参数

全部折叠

具有较少项的线性回归模型,返回为LinearModel对象。NewMdl是否使用输入数据和设置的新拟合模型mdl条款mdl

重写输入参数mdl,分配新拟合的模型mdl

mdl = removeTerms (mdl、条款);

更多关于

全部折叠

威尔金森符号

威尔金森表示法描述了模型中的术语。这个符号与模型中的项相关,而不是这些项的乘数(系数)。

威尔金森表示法使用这些符号:

  • +方法包括下一个变量。

  • - - - - - -表示不包含下一个变量。

  • 定义一个交互,它是术语的产物。

  • 定义交互作用和所有低阶项。

  • 将预测器提升到一个指数,就像重复,所以也包括低阶项。

  • ()组条件。

该表显示了威尔金森表示法的典型例子。

威尔金森符号 标准符号术语
1 常数(拦截)
x1 ^ k,在那里k为正整数 x1x12、……x1k
x1 + x2 x1x2
x1 * x2 x1x2x1 * x2
x1, x2 x1 * x2只有
x2 不包括x2
x1 * x2 + x3 x1x2x3x1 * x2
X1 + x2 + x3 + X1:x2 x1x2x3x1 * x2
x1 * x2 * x3 - x1, x2, x3 x1x2x3x1 * x2x1 * x3x2 * x3
x1 * (x2 + x3) x1x2x3x1 * x2x1 * x3

有关详细信息,请参见威尔金森符号

算法

  • removeTerms对分类预测器的处理如下:

    • 一个有绝对预测器的模型l包括水平(类别)l- 1指标变量。模型使用第一个类别作为参考级别,因此不包含参考级别的指标变量。如果分类预测器的数据类型为分类,则可以使用类别并通过使用reordercats自定义参考级别。创建指标变量的详细信息请参见虚拟变量的自动创建

    • removeTerms对待一组l- 1指示器变量作为一个单独的变量。如果您想将指示器变量视为不同的预测变量,可以使用dummyvar.然后在拟合模型时,使用除分类变量参考水平对应的指标变量外的其他指标变量。对于绝对预测器X,如果指定的所有列dummyvar (X)并以截距项作为预测因子,使设计矩阵秩亏缺。

    • 连续预测器和分类预测器之间的交互项l层次由元素的乘积组成l- 1带有连续预测器的指标变量。

    • 两个类别预测因子之间的交互项l级别包括l- 1) * (- 1)指标变量包括两个分类预测水平的所有可能组合。

    • 不能为绝对预测器指定高阶项,因为指示器的平方等于它本身。

选择功能

  • 使用stepwiselm在初始模型中指定术语,并继续改进模型,直到没有任何添加或删除术语的步骤是有益的。

  • 使用addTerms向模型中添加特定的术语。

  • 使用一步通过添加或删除术语来优化模型。

扩展功能

介绍了R2012a