stepwiseglm
通过逐步回归建立广义线性回归模型
描述
例子
基于逐步算法的广义线性模型
仅使用20个预测器中的3个创建响应数据,并使用逐步算法创建一个广义线性模型,以查看它是否使用了正确的预测器。
创建带有20个预测因子的数据,并使用其中3个预测因子和一个常数进行泊松响应。
rng (“默认”)再现率%X = randn(100,20);mu = exp(X(:,[5 10 15])*[.4;.2;。3] + 1);Y = poissrnd(mu);
用泊松分布拟合广义线性模型。
mdl = stepwiseglm(X,y,...“不变”,“上”,“线性”,“分布”,“泊松”)
1.加上x5, Deviance = 134.439, Chi2Stat = 52.24814, PValue = 4.891229e-133.添加x15, Deviance = 106.285, Chi2Stat = 28.15393, PValue = 1.1204e-07加上x10, Deviance = 95.0207, Chi2Stat = 11.2644, PValue = 0.000790094
mdl =广义线性回归模型:log(y) ~ 1 + x5 + x10 + x15分布=泊松估计系数:估计SE tStat pValue ________ ________ ______ __________(截距)1.0115 0.064275 15.737 8.4217e-56 x5 0.39508 0.066665 5.9263 3.0977e-09 x10 0.18863 0.05534 3.4085 0.0006532 x15 0.29295 0.053269 5.4995 3.8089e-08 100个观测值,96个误差自由度离散度:1 Chi^2统计量vs常数模型:91.7,p值= 9.61e-20
起始模型是常数模型。stepwiseglm
默认使用模型的偏差作为标准。它首先添加x5
进入模型,作为
-value为检验统计量,偏差(两个模型的偏差之差),小于默认阈值0.05。然后,它补充道连接
因为考虑到x5
是在模型里,什么时候连接
,则
-value表示卡方检验小于0.05。然后添加x10
因为考虑到x5
而且连接
都在模型里,什么时候x10
,则
卡方检验统计量的-value再次小于0.05。
输入参数
资源描述
- - - - - -输入数据
表格|数据集的数组
输入数据,包括预测器和响应变量,指定为表或数据集数组。预测变量和响应变量可以是数字、逻辑、分类、字符或字符串。只有在以下情况下,响应变量才可以具有数字以外的数据类型“分布”
是“二”
.
默认情况下,
stepwiseglm
将最后一个变量作为响应变量,其他变量作为预测变量。要将另一列设置为响应变量,请使用
ResponseVar
名称-值对参数。要使用列的子集作为预测器,请使用
PredictorVars
名称-值对参数。要定义模型规范,请设置
modelspec
参数使用公式或术语矩阵。公式或术语矩阵指定使用哪些列作为预测变量或响应变量。
表中的变量名不必是有效的MATLAB®标识符,但名称不能包含前导或尾随空格。如果名称无效,则在拟合或调整模型时不能使用公式;例如:
你不能指定
modelspec
使用公式。属性时,不能使用公式指定要添加或删除的项
addTerms
函数或removeTerms
函数,分别。属性时,不能使用公式指定模型的下界和上界
一步
或stepwiseglm
函数的名称-值对参数“低”
而且“上”
,分别。
中的变量名可以验证资源描述
通过使用isvarname
函数。变量名无效,则可以使用matlab.lang.makeValidName
函数。
X
- - - - - -预测变量
矩阵
预测变量,指定为n——- - - - - -p矩阵,n观察的次数和p是预测变量的数量。的每一列X
表示一个变量,每一行表示一个观察结果。
默认情况下,模型中有一个常数项,除非您显式地删除它,所以不要包含1的列X
.
数据类型:单
|双
y
- - - - - -反应变量
向量|矩阵
响应变量,指定为向量或矩阵。
如果
“分布”
不是“二”
,然后y
一定是n-by-1向量,其中n是观测的数量。每一项y
对应的行是否为响应X
.数据类型必须为single或double。如果
“分布”
是“二”
,然后y
可以是n-by-1向量或n-by-2矩阵,计数在列1和BinomialSize
在第二列。
数据类型:单
|双
|逻辑
|分类
modelspec
- - - - - -从模型
“不变”
(默认)|命名模型的字符向量或字符串标量|t————(p+ 1) terms矩阵|字符向量或字符串标量公式的形式“y ~项”
启动模型stepwiseglm
,指定为以下其中之一:
命名模型的字符向量或字符串标量。
价值 模型类型 “不变”
模型只包含一个常数(截距)项。 “线性”
模型包含每个预测器的截距和线性项。 “互动”
模型包含一个截距,每个预测器的线性项,以及不同预测器对的所有乘积(没有平方项)。下载188bet金宝搏 “purequadratic”
模型包含每个预测器的截距项和线性项和平方项。 “二次”
模型包含每个预测因子的截距项、线性项和平方项,以及不同预测因子对的所有乘积。下载188bet金宝搏 “聚
ijk
'模型是一个所有项都到次的多项式 我
第一个预测因子是程度j
在第二个预测器中,以此类推。通过使用数字0到9来指定每个预测器的最大程度。该模型包含交互项,但每个交互项的程度不超过指定程度的最大值。例如,“poly13”
有一个拦截x1,x2,x22,x23.,x1*x2,x1*x22条款,x1而且x2分别是第一和第二预测因子。一个t————(p+ 1)矩阵,或者a计算矩阵,指定模型中的术语,其中t和的个数是多少p是预测变量的数量,+1表示响应变量。当预测器的数量很大并且您希望以编程方式生成术语时,术语矩阵非常方便。
字符向量或字符串标量公式在表格中
“y ~项”
,在哪里
条款
在威尔金森符号.公式中的变量名必须为资源描述
或指定的变量名Varnames
.此外,变量名必须是有效的MATLAB标识符。该软件利用拟合模型中术语的顺序来确定拟合模型中术语的顺序
资源描述
或X
.因此,模型中的项的顺序可以不同于指定公式中的项的顺序。
如果您想指定模型中最小或最大的项集,则stepwiselm
适合,使用较低的
而且上
名称-值对参数。
数据类型:字符
|字符串
|单
|双
名称-值参数
指定可选参数对为Name1 = Value1,…,以=家
,在那里的名字
参数名称和价值
对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。
在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字
在报价。
例子:另类投资会议”、“标准”、“‘分配’,‘泊松’,‘上’,‘互动’
以赤池信息准则为模型增减变量的准则,以泊松分布为响应变量的分布,以所有可能相互作用的模型为最大模型考虑拟合。
BinomialSize
- - - - - -二项分布的试验次数
1(默认)|数字标量|数值向量|特征向量|字符串标量
二项分布的试验次数,即样本量,由逗号分隔的对组成“BinomialSize”
变量名资源描述
,一个数字标量,或与响应长度相同的数字向量。这就是参数n
对于拟合的二项分布。BinomialSize
仅当分布
参数是“二”
.
如果BinomialSize
是一个标量值,这意味着所有的观察都有相同的试验次数。
作为替代方案BinomialSize
,可以将响应指定为两列矩阵,计数在第1列和BinomialSize
在第二列。
数据类型:单
|双
|字符
|字符串
CategoricalVars
- - - - - -分类变量表
字符串数组|字符向量的单元格数组|逻辑或数字索引向量
类别变量列表,指定为逗号分隔的对,由“CategoricalVars”
或包含表或数据集数组中的类别变量名的字符向量的字符串数组或单元格数组资源描述
,或逻辑或数字索引向量,指示哪些列是分类的。
如果数据在表或数据集数组中
资源描述
,那么,默认情况下,stepwiseglm
将字符向量的所有分类值、逻辑值、字符数组、字符串数组和单元格数组视为分类变量。如果数据是矩阵
X
,则为默认值“CategoricalVars”
是一个空矩阵[]
.也就是说,除非将变量指定为分类变量,否则没有变量是分类变量。
例如,您可以使用以下任意一种方法将六个变量中的第二个和第三个变量指定为分类变量:
例子:“CategoricalVars”,[2,3]
例子:'CategoricalVars',logical([0 1 1 0 0 0 0])
数据类型:单
|双
|逻辑
|字符串
|细胞
标准
- - - - - -标准来添加或删除术语
“异常”
(默认)|上交所的
|“另类投资会议”
|“bic”
|“rsquared”
|“adjrsquared”
条件来添加或删除术语,指定为由逗号分隔的对组成“标准”
其中一个价值观是:
“异常”
- - - - - -p-valueF-test或卡方检验,对添加或删除项导致的偏差变化进行检验。的F-test测试单个模型,卡方检验比较两个不同的模型。上交所的
- - - - - -p-valueF-测试由于增加或删除项而导致的误差平方和的变化。“另类投资会议”
-赤池信息准则(AIC)值的变化。“bic”
—贝叶斯信息准则(BIC)值的变化。“rsquared”
的价值增加R2.“adjrsquared”
-调整值的增加R2.
例子:“标准”、“bic”
DispersionFlag
- - - - - -用于计算色散参数的指标
假
为“二”
而且“泊松”
分布(默认)|真正的
计算色散参数的指示器“二”
而且“泊松”
分布,指定为逗号分隔的对,由“DispersionFlag”
下面是其中之一。
真正的 |
在计算标准误差时估计色散参数。估计的离散度参数值是Pearson残差的平方和除以误差自由度(DFE)。 |
假 |
违约。计算标准误差时,使用理论值1。 |
拟合函数总是估计其他分布的离散度。
例子:“DispersionFlag”,真的
分布
- - - - - -响应变量的分布
“正常”
(默认)|“二”
|“泊松”
|“伽马”
|逆高斯分布的
响应变量的分布,指定为由逗号分隔的对组成“分布”
下面是其中之一。
“正常” |
正态分布 |
“二” |
二项分布 |
“泊松” |
泊松分布 |
“伽马” |
伽马分布 |
逆高斯分布的 |
逆高斯分布 |
例子:“分布”、“伽马”
排除
- - - - - -需要排除的观察结果
逻辑或数字索引向量
从拟合中排除的观测值,指定为由逗号分隔的对组成的“排除”
以及一个逻辑或数值索引向量,指示哪些观测值应从拟合中排除。
例如,你可以用下面的例子排除观察结果2和3。
例子:“排除”,[2,3]
例子:'Exclude',logical([0 1 1 0 0 0 0])
数据类型:单
|双
|逻辑
拦截
- - - - - -常数项指标
真正的
(默认)|假
拟合中常数项(截距)的指示器,指定为逗号分隔的对,由“拦截”
,要么真正的
包括:包括或假
从模型中去掉常数项。
使用“拦截”
仅当使用字符向量或字符串标量而不是公式或矩阵指定模型时。
例子:“拦截”,假的
链接
- - - - - -链接功能
正则链函数(默认)|标量值|结构
要用来代替规范链接函数的链接函数,指定为由逗号分隔的对组成“链接”
下面是其中之一。
Link函数名称 | 链接功能 | 均值(逆)函数 |
---|---|---|
“身份” |
f(μ) =μ | μ=Xb |
“日志” |
f(μ) = log(μ) | μ= exp (Xb) |
分对数的 |
f(μ) = log(μ/ (1 -μ)) | μ= exp (Xb/ (1 + exp(Xb)) |
“probit” |
f(μ) = Φ1(μ),其中Φ为标准正态分布的累积分布函数。 | μ=Φ(Xb) |
“comploglog” |
f(μ) = log(- log(1 -μ)) | μ= 1 - exp(- exp(Xb)) |
“互惠” |
f(μ) = 1/μ | μ= 1 / (Xb) |
p (数量) |
f(μ) =μp | μ=Xb1 /p |
|
f(μ) =S.Link (μ) |
μ=S.Inverse (Xb) |
link函数定义了关系f(μ) =X*b在平均响应之间μ以及预测因子的线性组合X*b.
有关规范链接函数的更多信息,请参见正则配分函数.
例子:“链接”、“概率单位”
数据类型:字符
|字符串
|单
|双
|结构体
较低的
- - - - - -描述不能从模型中删除的术语的模型规范
“不变”
(默认)|特征向量|字符串标量|计算矩阵
描述不能从模型中删除的术语的模型规范,指定为由逗号分隔的对组成“低”
其中一个选项是modelspec
命名模型。
例子:“低”,“线性”
NSteps
- - - - - -可采取的最大步数
没有限制(默认)|正整数
要执行的最大步数,指定为逗号分隔的对,由“NSteps”
一个正整数。
例子:“NSteps”,5
数据类型:单
|双
抵消
- - - - - -抵消变量
[](默认)|数值向量|特征向量|字符串标量
匹配中的偏移量变量,指定为逗号分隔的对,由“抵消”
变量名资源描述
或者一个与响应长度相同的数字向量。
stepwiseglm
使用抵消
作为一个系数值固定为1的附加预测器。换句话说,拟合公式是
f(μ)=偏移量+X*b
,
在哪里f是连杆函数,μ平均响应,和X*b预测因子是线性组合吗X.的抵消
预测器有系数1
.
例如,考虑一个泊松回归模型。假设由于理论上的原因,计数的数量与预测器成比例一个
.通过使用日志链接功能和指定日志(一)
作为偏移量,您可以强制模型满足这个理论约束。
数据类型:单
|双
|字符
|字符串
被关闭的
- - - - - -阈值为标准添加项
标量值
阈值为条件添加一个术语,指定为由逗号分隔的对组成“囚禁”
和一个标量值,如本表所述。
标准 | 默认值 | 决定 |
---|---|---|
“异常” |
0.05 | 如果p的-valueF-statistic或chi-squared statistic小于被关闭的 (p-value to enter),将术语添加到模型中。 |
上交所的 |
0.05 | 如果p的-valueF-statistic小于被关闭的 ,将术语添加到模型中。 |
“另类投资会议” |
0 | 如果模型的AIC变化小于被关闭的 ,将术语添加到模型中。 |
“BIC” |
0 | 如果模型的BIC变化小于被关闭的 ,将术语添加到模型中。 |
“Rsquared” |
0.1 | 如果模型的r平方值的增加大于被关闭的 ,将术语添加到模型中。 |
“AdjRsquared” |
0 | 如果模型调整后的r平方值的增加大于被关闭的 ,将术语添加到模型中。 |
有关更多信息,请参见标准
名称-值对参数。
例子:“囚禁”,0.075
PredictorVars
- - - - - -预测变量
字符串数组|字符向量的单元格数组|逻辑或数字索引向量
拟合中使用的预测变量,指定为逗号分隔的对,由“PredictorVars”
以及表或数据集数组中变量名的字符向量的字符串数组或单元格数组资源描述
,或逻辑或数字索引向量,指示哪些列是预测变量。
字符串值或字符向量应该在资源描述
属性指定的名称“VarNames”
名称-值对参数。
默认为所有变量X
,或所有变量在资源描述
除了ResponseVar
.
例如,您可以使用以下示例之一指定第二个和第三个变量作为预测变量。
例子:“PredictorVars”,[2,3]
例子:'PredictorVars',logical([0 1 1 0 0 0 0])
数据类型:单
|双
|逻辑
|字符串
|细胞
PRemove
- - - - - -阈值为去除术语的标准
标量值
阈值,用于移除一个术语,指定为由逗号分隔的对组成“PRemove”
和一个标量值,如本表所述。
标准 | 默认值 | 决定 |
---|---|---|
“异常” |
0.10 | 如果p的-valueF-statistic或卡方统计值大于PRemove (p-value to remove),从模型中删除术语。 |
上交所的 |
0.10 | 如果p的-valueF-statistic大于PRemove ,将该项从模型中移除。 |
“另类投资会议” |
0.01 | 如果模型AIC的变化大于PRemove ,将该项从模型中移除。 |
“BIC” |
0.01 | 如果模型的BIC变化大于PRemove ,将该项从模型中移除。 |
“Rsquared” |
0.05 | 如果模型的r平方值的增加小于PRemove ,将该项从模型中移除。 |
“AdjRsquared” |
-0.05 | 如果模型调整后的r平方值的增加小于PRemove ,将该项从模型中移除。 |
在每一步,stepwiseglm
函数还检查一个项是否与当前模型中的其他项冗余(线性相关)。当一个项与当前模型中的其他项线性相关时,则stepwiseglm
函数删除冗余项,而不管标准值如何。
有关更多信息,请参见标准
名称-值对参数。
例子:“PRemove”,0.05
ResponseVar
- - - - - -反应变量
最后一栏资源描述
(默认)|包含变量名的字符向量或字符串标量|逻辑或数字索引向量
要在拟合中使用的响应变量,指定为逗号分隔的对,由“ResponseVar”
以及在表或数据集数组中包含变量名的字符向量或字符串标量资源描述
,或逻辑或数字索引向量,指示哪一列是响应变量。你通常需要使用“ResponseVar”
在拟合表或数据集数组时资源描述
.
例如,您可以指定第四个变量收益率
,作为六个变量中的响应,可以采用以下方法之一。
例子:“ResponseVar”、“收益”
例子:“ResponseVar”,[4]
例子:'ResponseVar',logical([0 0 0 0 1 0 0])
数据类型:单
|双
|逻辑
|字符
|字符串
上
- - - - - -描述最大拟合项集的模型规范
“互动”
(默认)|特征向量|字符串标量|计算矩阵
描述拟合中最大术语集的模型规范,指定为逗号分隔的对,由“上”
其中一个选项是modelspec
命名模型。
例子:“上”、“二次”
VarNames
- - - - - -变量名
{x1, x2,…,‘xn’,‘y’}
(默认)|字符串数组|字符向量的单元格数组
变量名,指定为逗号分隔的对,由“VarNames”
和包含列名的字符向量的字符串数组或单元格数组X
首先是响应变量的名称y
最后的
“VarNames”
不适用于表或数据集数组中的变量,因为这些变量已经有名称。
变量名不必是有效的matlabidentifier,但名称不能包含前导或尾随空格。如果名称无效,则在拟合或调整模型时不能使用公式;例如:
属性时,不能使用公式指定要添加或删除的项
addTerms
函数或removeTerms
函数,分别。属性时,不能使用公式指定模型的下界和上界
一步
或stepwiseglm
函数的名称-值对参数“低”
而且“上”
,分别。
在指定VarNames, VarNames
中,您可以验证变量名varNames
通过使用isvarname
函数。变量名无效,则可以使用matlab.lang.makeValidName
函数。
例子:VarNames,{“马力”,“加速”,“Model_Year”,“英里”}
数据类型:字符串
|细胞
详细的
- - - - - -控件,用于显示信息
1
(默认)|0
|2
控件的信息显示,指定为逗号分隔的对,由“详细”
其中一个价值观是:
0
-禁止所有显示。1
—显示每一步执行的操作。2
-展示评估过程和每一步采取的行动。
例子:“详细”,2
权重
- - - - - -观察权重
的(n, 1)
(默认)|n非负标量值的-by-1向量
观察权重,由逗号分隔的对组成“重量”
和一个n非负标量值的-by-1向量,其中n是观测的数量。
数据类型:单
|双
输出参数
mdl
-广义线性回归模型
GeneralizedLinearModel
对象
广义线性回归模型,指定为GeneralizedLinearModel
使用fitglm
或stepwiseglm
.
更多关于
计算矩阵
A项矩阵T
是一个t————(p+ 1)在模型中指定项的矩阵,其中t是项的个数,p是预测变量的数量,+1表示响应变量。的价值T (i, j)
变量的指数是多少j
在术语我
.
例如,假设一个输入包含三个预测变量x1
,x2
,x3
以及响应变量y
按顺序x1
,x2
,x3
,y
.每行T
表示一项:
[0 0 0 0]
-常数项或截距[0 1 0 0]
- - - - - -x2
;同样,X1 ^0 * x2^1 * x3^0
[1 0 10 0]
- - - - - -x1 * x3
[2 0 0 0]
- - - - - -x1 ^ 2
[0 1 2 0]
- - - - - -x2 * (x3 ^ 2)
的0
在每一项的末尾表示响应变量。通常,项矩阵中的零列向量表示响应变量的位置。如果你在一个矩阵和列向量中有预测变量和响应变量,那么你必须包含0
对于每一行的最后一列中的响应变量。
公式
模型规范的公式是该形式的字符向量或字符串标量'
.y
~条款
'
y
响应名称。条款
用威尔金森符号表示模型中的预测项。
要表示预测变量和响应变量,请使用表输入的变量名资源描述
或使用指定的变量名VarNames
.的默认值VarNames
是{x1, x2,…,‘xn’,‘y’}
.
例如:
'y ~ x1 + x2 + x3'
指定带有截距的三变量线性模型。'y ~ x1 + x2 + x3 - 1'
指定一个无截距的三变量线性模型。注意,公式默认包含一个常数(截距)项。要从模型中排除常数项,必须包含1
在公式中。
公式中包含一个常数项,除非你明确地使用1
.
威尔金森符号
威尔金森符号描述模型中出现的项。符号与模型中出现的项有关,而不是那些项的乘数(系数)。
威尔金森记谱法使用这些符号:
+
意味着包含下一个变量。- - - - - -
意味着不包括下一个变量。:
定义一个交互,它是术语的产物。*
定义交互和所有低阶项。^
将预测器提升到幂,就像*
重复,所以^
也包括低阶项。()
组条件。
这个表显示了威尔金森符号的典型例子。
威尔金森符号 | 标准符号术语 |
---|---|
1 |
常数(截距)项 |
x1 ^ k ,在那里k 是正整数 |
x1 ,x12 、……x1k |
X1 + x2 |
x1 ,x2 |
x1 * x2 |
x1 ,x2 ,x1 * x2 |
x1, x2 |
x1 * x2 只有 |
x2 |
不包括x2 |
X1 *x2 + x3 |
x1 ,x2 ,x3 ,x1 * x2 |
X1 + x2 + x3 + X1 = x2 |
x1 ,x2 ,x3 ,x1 * x2 |
X1 *x2*x3 - X1:x2:x3 |
x1 ,x2 ,x3 ,x1 * x2 ,x1 * x3 ,x2 * x3 |
X1 *(x2 + x3) |
x1 ,x2 ,x3 ,x1 * x2 ,x1 * x3 |
详情请参见威尔金森符号.
正则配分函数
广义线性模型的默认链接函数是正则链函数.
分布 | 正则链路函数名称 | 链接功能 | 均值(逆)函数 |
---|---|---|---|
“正常” |
“身份” |
f(μ) =μ | μ=Xb |
“二” |
分对数的 |
f(μ) = log(μ/ (1 -μ)) | μ= exp (Xb/ (1 + exp(Xb)) |
“泊松” |
“日志” |
f(μ) = log(μ) | μ= exp (Xb) |
“伽马” |
-1 |
f(μ) = 1/μ | μ= 1 / (Xb) |
逆高斯分布的 |
-2 |
f(μ) = 1/μ2 | μ= (Xb)1/2 |
提示
广义线性模型
mdl
是标准线性模型,除非您使用分布
名称-值对。对于其他方法,如
devianceTest
的属性GeneralizedLinearModel
对象,看到GeneralizedLinearModel
.在训练模型之后,您可以生成预测新数据响应的C/ c++代码。生成C/ c++代码需要MATLAB编码器™.详细信息请参见代码生成简介.
算法
逐步回归是一种系统方法,用于根据解释响应变量时的统计显著性,从线性或广义线性模型中添加和删除项。该方法从使用指定的初始模型开始
modelspec
,然后比较增量大模型和增量小模型的解释能力。的
stepwiseglm
函数使用正向和反向逐步回归来确定最终模型。的值搜索要添加到模型或从模型中删除的项“标准”
名称-值对参数。的默认值
“标准”
对于线性回归模型是上交所的
.在这种情况下,stepwiselm
而且一步
的LinearModel
使用p的-值F-statistic在每一步中测试模型是否有潜在项。如果一个项目前不在模型中,零假设是,如果将该项添加到模型中,该项的系数将为零。如果有足够的证据来拒绝零假设,该函数将该项添加到模型中。相反,如果一个项当前在模型中,零假设是该项的系数为零。如果没有足够的证据来拒绝零假设,该函数将从模型中删除该项。逐步回归采取这些步骤时
“标准”
是上交所的
:拟合初始模型。
检查一组不在模型中的可用项。如果有任何条款p-值小于入口公差(也就是说,如果一个项添加到模型中不太可能有零系数),则添加最小的项p-value并重复此步骤;否则,请执行步骤3。
如果模型中任何可用项具有p-大于出口容差的值(即不能拒绝系数为零的假设),删除最大的项p-value并返回步骤2;否则,请结束该进程。
在任何阶段,如果模型不包括作为高阶项子集的所有低阶项,则函数将不会添加高阶项。例如,函数将不会尝试添加项
X1, X2 ^ 2
除非两X1
而且X2 ^ 2
已经在模型中了。类似地,该函数不会删除模型中保留的高阶项的子集的低阶项。例如,该函数将不会尝试删除X1
或X2 ^ 2
如果X1, X2 ^ 2
留在模型中。的默认值
“标准”
对于广义线性模型是“异常”
.stepwiseglm
而且一步
的GeneralizedLinearModel
按照类似的过程添加或删除术语。属性可以指定其他条件
“标准”
名称-值对参数。例如,您可以指定赤池信息准则、贝叶斯信息准则、r平方或调整r平方的值的变化作为添加或删除项的准则。根据初始模型中包含的项,以及函数添加和删除项的顺序,该函数可能会从同一组潜在项构建不同的模型。当没有单个步骤改进模型时,函数终止。然而,不同的初始模型或不同的步骤序列并不能保证更好的拟合。从这个意义上说,逐步模型是局部最优的,但可能不是全局最优的。
stepwiseglm
对分类预测器的处理如下:一个带有分类预测器的模型l级别(类别)包括l- 1指标变量。该模型使用第一个类别作为参考级别,因此它不包括参考级别的指示器变量。如果分类预测器的数据类型为
分类
,则可使用类别
并通过使用重新排序类别reordercats
自定义引用级别。有关创建指标变量的详细信息,请参见自动创建虚拟变量.stepwiseglm
治疗一组l- 1指标变量作为单一变量。如果要将指标变量视为不同的预测变量,请使用dummyvar
.然后在拟合模型时使用指示变量,除了与分类变量的参考级别对应的指示变量。对于分类预测器X
,如果指定的所有列dummyvar (X)
用截距项作为预测因子,则设计矩阵具有秩亏性。连续预测器与分类预测器之间的交互项l类的元素乘积组成l- 1带有连续预测器的指标变量。
两个直言预测符之间的相互作用项l而且米级别由(l- 1) * (米- 1)指标变量包括两个分类预测水平的所有可能组合。
你不能为分类预测器指定高阶项,因为一个指标的平方等于它本身。
因此,如果
stepwiseglm
添加或删除一个分类预测器,该函数实际上是一步添加或删除一组指示符变量。类似地,如果stepwiseglm
添加或删除带有分类预测器的交互项,该函数实际上添加或删除包含分类预测器的交互项组。stepwiseglm
认为南
,”
(空字符向量),""
(空字符串),< >失踪
,<定义>
值资源描述
,X
,Y
丢失的值。stepwiseglm
不使用在拟合中缺少值的观测值。的ObservationInfo
拟合模型的性质表明是否stepwiseglm
在拟合中使用每个观察结果。
选择
使用
fitglm
创建具有固定规格的模型。使用一步
,addTerms
,或removeTerms
调整拟合模型
参考文献
[1]科莱特D。二进制数据建模.纽约:查普曼和霍尔,2002年。
[2]多布森a.j.广义线性模型导论.纽约:查普曼和霍尔,1990年。
[3]麦cullagh P.和J. A. Nelder。广义线性模型.纽约:查普曼和霍尔,1990年。
版本历史
Abrir比如
Tiene una versión modificada de este ejemplo。¿Desea abrir este ejemplo con sus modificaciones?
MATLAB突击队
Ha hecho clic en unenlace que对应一个este commando de MATLAB:
弹射突击队introduciéndolo en la ventana de commandos de MATLAB。Los navegadores web no permission comandos de MATLAB。
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。