分类协变量的线性回归gydF4y2Ba
此示例演示如何使用分类数组和对分类协变量执行回归gydF4y2BafitlmgydF4y2Ba
.gydF4y2Ba
加载样例数据。gydF4y2Ba
负载gydF4y2BacarsmallgydF4y2Ba
的变量gydF4y2Ba英里/加仑gydF4y2Ba
包含100辆样车每加仑英里数的测量值。每辆车的型号年份都在变量中gydF4y2BaModel_YeargydF4y2Ba
,gydF4y2Ba重量gydF4y2Ba
包含每辆车的重量。gydF4y2Ba
绘制分组数据。gydF4y2Ba
的散点图gydF4y2Ba英里/加仑gydF4y2Ba
反对gydF4y2Ba重量gydF4y2Ba
,按车型年份分组。gydF4y2Ba
图()gscatter(重量、MPG Model_Year,gydF4y2Ba“bgr”gydF4y2Ba,gydF4y2Ba“x.o”gydF4y2Ba)标题(gydF4y2Ba“MPG vs.体重,按车型年份分组”gydF4y2Ba)gydF4y2Ba
分组变量,gydF4y2BaModel_YeargydF4y2Ba
,有三个独特的值,gydF4y2Ba70gydF4y2Ba
,gydF4y2Ba76gydF4y2Ba
,gydF4y2Ba82gydF4y2Ba
,分别对应1970年、1976年和1982年的模型年。gydF4y2Ba
创建表和分类数组。gydF4y2Ba
创建一个包含变量的表gydF4y2Ba英里/加仑gydF4y2Ba
,gydF4y2Ba重量gydF4y2Ba
,gydF4y2BaModel_YeargydF4y2Ba
.转换变量gydF4y2BaModel_YeargydF4y2Ba
到一个分类数组。gydF4y2Ba
cars = table(MPG,Weight,Model_Year);汽车米odel_Year = categorical(cars.Model_Year);
拟合回归模型。gydF4y2Ba
拟合回归模型gydF4y2BafitlmgydF4y2Ba
与gydF4y2Ba英里/加仑gydF4y2Ba
作为因变量,和gydF4y2Ba重量gydF4y2Ba
而且gydF4y2BaModel_YeargydF4y2Ba
作为自变量。因为gydF4y2BaModel_YeargydF4y2Ba
为三级分类协变量,应作为两个指标变量进入模型。gydF4y2Ba
散点图表明的斜率gydF4y2Ba英里/加仑gydF4y2Ba
反对gydF4y2Ba重量gydF4y2Ba
每个型号年可能有所不同。为了评估这一点,包括重量-年相互作用项。gydF4y2Ba
所提出的模型为gydF4y2Ba
在哪里gydF4y2Ba我gydF4y2Ba[1976]和gydF4y2Ba我gydF4y2Ba[1982]为虚拟变量,分别表示模型年份1976年和1982年。gydF4y2Ba我gydF4y2Ba[1976]如果模型年是1976年,则取1,如果不是,则取0。gydF4y2Ba我gydF4y2Ba[1982]如果模型年是1982年,则取1,如果不是,则取0。在这个模型中,1970年是参考年。gydF4y2Ba
Fit = fitlm(汽车,gydF4y2Ba“MPG ~ * Model_Year重量”gydF4y2Ba)gydF4y2Ba
拟合=线性回归模型:MPG ~ 1 +权重*模型_年估计SE ___________ __________(截取)37.399 2.1466 Weight -0.0058437 0.00061765 Model_Year_76 4.6903 2.8538 Model_Year_82 21.051 4.157 Weight:Model_Year_76 -0.00082009 0.00085468 Weight:Model_Year_82 -0.0050551 0.0015636 tStat pValue ________ __________(截取)17.423 2.8607e-30 Weight -9.4612 4.6077e-15 Model_Year_76 1.6435 0.10384 Model_Year_82 5.0641 2.2364e-06 Weight:Model_Year_76 -0.95953 0.33992 Weight:Model_Year_82 -3.2329 0.0017256观测数:94,误差自由度:88均方根误差:2.79 r平方:0.886,调整r平方:0.88 f统计量vs常数模型:137,p值= 5.79e-40gydF4y2Ba
回归输出显示:gydF4y2Ba
fitlmgydF4y2Ba
认识到gydF4y2BaModel_YeargydF4y2Ba
作为分类变量,并构造所需的指标(虚拟)变量。默认情况下,第一层,gydF4y2Ba70gydF4y2Ba
,为参考组(使用gydF4y2BareordercatsgydF4y2Ba
更改参考组)。gydF4y2Ba模型规范,gydF4y2Ba
英里/加仑~ * Model_Year重量gydF4y2Ba
的一阶项gydF4y2Ba重量gydF4y2Ba
而且gydF4y2BaModel_YeargydF4y2Ba
,以及所有的互动。gydF4y2Ba该模型gydF4y2BaRgydF4y2Ba2gydF4y2Ba= 0.886,这意味着当考虑到重量、车型年份及其相互作用时,每加仑英里数的变化减少了88.6%。gydF4y2Ba
拟合模型为gydF4y2Ba
因此,模型年的估计回归方程如下。gydF4y2Ba
模型一年gydF4y2Ba 预测MPG /体重gydF4y2Ba 1970gydF4y2Ba 1976gydF4y2Ba 1982gydF4y2Ba
之间的关系gydF4y2Ba英里/加仑gydF4y2Ba
而且gydF4y2Ba重量gydF4y2Ba
随着模型年的增加,斜率逐渐为负。gydF4y2Ba
图拟合回归线。gydF4y2Ba
绘制数据和拟合回归线。gydF4y2Ba
w = linspace(min(Weight),max(Weight));图()gscatter(重量、MPG Model_Year,gydF4y2Ba“bgr”gydF4y2Ba,gydF4y2Ba“x.o”gydF4y2Ba)线(w函数宏指令(健康,w,gydF4y2Ba“70”gydF4y2Ba),gydF4y2Ba“颜色”gydF4y2Ba,gydF4y2Ba“b”gydF4y2Ba,gydF4y2Ba“线宽”gydF4y2Ba2)线(w函数宏指令(健康,w,gydF4y2Ba“76”gydF4y2Ba),gydF4y2Ba“颜色”gydF4y2Ba,gydF4y2Ba‘g’gydF4y2Ba,gydF4y2Ba“线宽”gydF4y2Ba2)线(w函数宏指令(健康,w,gydF4y2Ba“82”gydF4y2Ba),gydF4y2Ba“颜色”gydF4y2Ba,gydF4y2Ba“r”gydF4y2Ba,gydF4y2Ba“线宽”gydF4y2Ba2)标题(gydF4y2Ba“按模型年拟合回归线”gydF4y2Ba)gydF4y2Ba
测试不同的坡度。gydF4y2Ba
测试斜坡之间的显著差异。这相当于检验假设gydF4y2Ba
方差分析(适合)gydF4y2Ba
ans = SumSq DF MeanSq F pValue Weight 2050.2 1 2050.2 263.87 3.2055e-28 Model_Year 807.69 2 403.84 51.976 1.2494e-15 Weight:Model_Year 81.219 2 40.609 5.2266 0.0071637 Error 683.74 88 7.7698gydF4y2Ba
0.0072gydF4y2Ba
(从交互行,gydF4y2Ba重量:Model_YeargydF4y2Ba
),因此原假设在0.05显著性水平下被拒绝。测试统计量的值为gydF4y2Ba5.2266gydF4y2Ba
.这个测试的分子自由度是gydF4y2Ba2gydF4y2Ba
,即原假设的系数数。gydF4y2Ba
有足够的证据表明,所有三个模式年的斜率并不相等。gydF4y2Ba
另请参阅gydF4y2Ba
fitlmgydF4y2Ba
|gydF4y2Ba分类gydF4y2Ba
|gydF4y2BareordercatsgydF4y2Ba
|gydF4y2Ba方差分析gydF4y2Ba